home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / 4dos / 4dhlp.zip / 4DOSME.HLP < prev    next >
Text File  |  1992-01-09  |  303KB  |  8,232 lines

  1. * Welcome to the 4DOS/4OS2 Hypertext System For Multi-Edit
  2.  
  3.    @ABOUT[A. About 4DOS/ACI HyperText]          @≈INDEX[!L. Index of Chapters]
  4.  
  5.    @VARIABLES[!B. Variables]                         @FUNCTIONS[!M. Functions]
  6.    @COMMANDS[!C. Commands & Keywords {A-J}]         @DIRECTIVES[!N. 4DOS.INI Directives]
  7.    @COMMANDS2[!D. Commands & Keywords {K-Z}]         @KEYS[!O. Key Names & Scan Codes]
  8.    @ANSI[!E. ANSI Sequences]                    @>SUPPORT^ASCII[!P. ASCII Character Chart]
  9.    @GROUPING[!F. Command Grouping]                  @REDIRECTION[!Q. Redirection & Piping]
  10.    @WILDCARDS[!G. Wildcards]                         @INCLUDE[!R. Include Lists]
  11.    @CONDITIONAL[!H. Conditional Commands]              @COLORS[!S. Color Attributes & Names]
  12.    @EXITCODE[!I. Exit Codes]                        @GLOSSARY[!T. Glossary]
  13.  
  14.    @ACI_HYPE^USING_HYPE[!J .Using the Hypertext Help System]   @ACI_HYPE^QUICKREF[!U. Quick reference to ACI Hypertext]
  15.    @ACI_HYPE^SEARCH[!K. Searching for Text]                @ME^[!V. Multi-Edit Reference Guide]
  16.  
  17.  
  18.  ^1 Release #920110 ^0
  19. ABOUT About this 4DOS/4OS2 HyperText HELP System
  20.      ^B┌────────────────────────────────────────────────────────────────╖^b
  21.      ^B│^b     Based on original 4DOS Help Text By Rex Conn and Tom Rawson  ^B║^b
  22.      ^B│^b All material in this file is Copyright 1991, JP Software Inc., ^B║^b
  23.      ^B│^b                      All Rights Reserved.                      ^B║^b
  24.      ^B╘════════════════════════════════════════════════════════════════╝^b
  25.  
  26. 4DOS is a registered trademark and 4OS2 is a trademark of JP Software Inc.
  27. All American Cybernetics products are trademarks or registered trademarks of
  28. American Cybernetics, Inc.  Other product names are trademarks of their
  29. respective manufacturers.
  30.  
  31. This product is provided AS-IS AND WITHOUT WARRANTY OF ANY KIND, express or
  32. implied, including warranties of merchandability or fitness for a particular
  33. purpose.
  34.  
  35. ^BDistribution Restrictions^b:
  36.  
  37.    ■ You may only distribute this file for the use of Multi-Edit and 4DOS
  38.      users and not for use in any general-purpose DOS, 4DOS, or other
  39.      help system.
  40.  
  41.    ■ You may modify this file for your own use or for the use of
  42.      properly licensed 4DOS and Multi-Edit users within your own company,
  43.      but you may not distribute modified copies of this file in any
  44.      other way.  Specifically, you may not modify this file and make the
  45.      modified version available on any public bulletin board, on-line
  46.      service, or other similar location, or distribute modified copies
  47.      for a fee in any way, including as part of any other product.
  48.  
  49.    ■ You may distribute unmodified copies of this file in any way you
  50.      choose, provided that no charge is made for the use or distribution
  51.      of the file, except actual copying costs not to exceed $5.00 per
  52.      copy. This restriction also applies when unmodified copies of this
  53.      file are included as part of any other product
  54.  
  55. If you have questions about this policy or feel you have a situation
  56. which merits an exception, please contact JP Software in advance for
  57. additional information and/or permission.
  58.  
  59. This online help system for 4DOS/4OS2 includes all 4DOS internal commands,
  60. plus all MS-DOS external commands.  Information on external commands is
  61. up-to-date as of MS-DOS version 5.0.  For coverage of topics not included
  62. here, please refer to your 4DOS documentation.
  63.  
  64. This is not meant to be a comprehensive reference tool, but merely a
  65. convenience for Multi-Edit users who often edit 4DOS batch files and/or
  66. aliases.  We suggest you make this the default HELP file for extensions
  67. ".BAT" and ".BTM".
  68.  
  69. For information on Multi-Edit and       For further information on 4DOS and
  70. the ACI HyperText, contact:            4OS2, contact:
  71.  
  72.   ^BAmerican Cybernetics, Inc.^b             ^BJP Software, Inc.^b
  73.   1830 W. University - Suite 112         PO Box 1470
  74.   Tempe, AZ 85281 USA                    East Arlington, MA 02174 USA
  75.   Tel. 602-968-1945                      Tel. 617-646-3975
  76.   Fax  602-966-1654                      Fax  617-646-0904
  77.  
  78. Comments about this particular implementation of the ACI HyperText system,
  79. as well as suggestions and bug reports, should be directed to:
  80.  
  81.                ^1Michael R. Bessy^0
  82.                ^1JP Software, Inc.^0
  83.                ^1INTERNET 75300.1215@@compuserve.com^0
  84.            ^1CompuServe 75300,1215^0
  85.  
  86. VARIABLES Environment and Internal Variables
  87.  
  88. Environment @VARIABLES%Variables Index[variables] are referenced in a command by starting the variable
  89. name with a percent sign (^B%^b).  (If you want to enter a percent sign without
  90. referring to a variable, use two percent signs (^B%%^b).)  An environment
  91. variable name is terminated by either another percent sign, or by an
  92. invalid character (see below).  To pass a variable name (instead of the
  93. value) to a command (for example, in @INKEY[INKEY] or @INPUT[INPUT]), you must precede it
  94. with ^Btwo^b percent signs.
  95.  
  96. Environment variable names may be composed of any alphanumeric character,
  97. plus the underscore (^B_^b), and ^B$^b characters.  In addition to the standard
  98. variable name characters, you can force 4DOS to accept any sequence of
  99. characters as a valid variable name by enclosing them in square brackets.
  100. For example, ^B%[AB##1]^b refers to an environment variable named ^BAB##1^b.
  101.  
  102. Batch file variables, more properly called ^Bpositional parameters^b, are only
  103. active inside a batch file.  They are referenced as ^B%0^b to ^B%127^b, and
  104. expand to the matching argument on the command line that started the batch
  105. file. Parameter ^B%0^b will contain the name of the batch file itself, as it
  106. was entered on the command line.  The parameter ^B%n&^b is a special case, and
  107. expands to all arguments in the command line tail, starting with argument
  108. number ^Bn^b.  If ^Bn^b is not specified, it defaults to ^B1^b (therefore, ^B%&^b will
  109. expand to all arguments in the command line tail).
  110.  
  111. There are some variable names that have special meanings in 4DOS.  Only
  112. @CDPATH[CDPATH], @COLORDIR[COLORDIR], @COMSPEC[COMSPEC], @CMDLINE[CMDLINE], @PATH[PATH], @TEMP[TEMP], and @TEMP4DOS[TEMP4DOS] are actually
  113. stored in the environment. the remainder are internal to 4DOS, and cannot
  114. be viewed or modified with @SET[SET] or @ESET[ESET].  (The internal variable names are
  115. checked _after_ variable expansion, so they can be overridden by creating an
  116. environment variable of the same name.)
  117.  
  118. (Select this @4DOSMEMAC[Link] for information on viewing the current contents of
  119. the 4DOS environment variables for Multi-Edit 6.0 and later)
  120.  
  121.  
  122.                   ^B Variables Index ^b
  123.  
  124.    @#[%#]                  @÷?[%?]                  @_?[%_?]                 @CDPATH[%CDPATH]
  125.    @CMDLINE[%CMDLINE]            @COLORDIR[%COLORDIR]           @COMSPEC[%COMSPEC]            @÷PATH[%PATH]
  126.    @TEMP[%TEMP]               @TEMP4DOS[%TEMP4DOS]           @_4VER[%_4VER]              @_ALIAS[%_ALIAS]
  127.    @_ANSI[%_ANSI]              @_BATCH[%_BATCH]             @_BG[%_BG]                @_BOOT[%_BOOT]
  128.    @_CDPATH[%_CDPATH]            @_CODEPAGE[%_CODEPAGE]          @_COLUMN[%_COLUMN]            @_COLUMNS[%_COLUMNS]
  129.    @_CPU[%_CPU]               @_CWD[%_CWD]               @_CWDS[%_CWDS]              @_CPW[%_CWP]
  130.    @_CWPS[%_CWPS]              @_DATE[%_DATE]              @_DISK[%_DISK]              @_DOS[%_DOS]
  131.    @_DOSVER[%_DOSVER]            @_DOW[%_DOW]               @_DV[%_DV]                @_ENV[%_ENV]
  132.    @_FG[%_FG]                @_LASTDISK[%_LASTDISK]          @_MONITOR[%_MONITOR]           @_MOUSE[%_MOUSE]
  133.    @_NDP[%_NDP]               @_ROW[%_ROW]               @_ROWS[%_ROWS]              @_SHELL[%_SHELL]
  134.    @_TIME[%_TIME]              @_TRANSIENT[%_TRANSIENT]         @_VIDEO[%_VIDEO]             @_WIN[%_WIN]
  135.  
  136. 4DOSMEMAC The 4DOSME Macro
  137.  
  138. The current value of 4DOS @VARIABLES[variables] which are kept in the environment
  139. (COMSPEC, PATH, etc.) can optionally be viewed directly from the HELP
  140. screen where they are defined.  Those screens will show the line:
  141.  
  142.     (Select this ^B[link]^b  to view the current contents of this variable)
  143.  
  144. If you select the "[link]" area, macro ^B4DOSME^b will be invoked to
  145. query your system.  If the variable is not currently defined in your
  146. environment, you will receive an appropriate message.  If the contents of
  147. the variable are longer than your screen width, they will be truncated
  148. to fit, and the string "^B...^b" will be appended to show that only a partial
  149. value is displayed.
  150.  
  151. Pressing <ENTER>, <ESC> or a mouse button will restore the HELP screen.
  152.  
  153. There is no garantee that this macro will work on all systems and all
  154. versions of Multi-Edit.  The compiled 4DOSME.MAC is included in the
  155. distributed version of this 4DOS/ACI Help system, but the CMAC-format
  156. source is shown below in case you need to recompile it.
  157.  
  158.  
  159.  Macro 4dosme Trans {
  160.  /**********************************************************************
  161.  *                                                                     *         *
  162.  *   This macro is part of file 4DOSME.HLP and is subject to the same  *
  163.  *   copyrights and distribution restrictions.                         *
  164.  *   Copyright 1991 JP Software, Inc.                                  *
  165.  *   Please refer to 4DOSME.HLP for usage instructions                 *
  166.  *                                                                     *
  167.  ******************************************** MRB 01-08-92 03:46pm ****/
  168.    Str Var_Name, Var_Value, Msg;
  169.     Int Ref;
  170.  
  171.     Ref = Refresh;
  172.     Refresh = False;
  173.     Mark_Pos;
  174.     Var_name = Caps(Parse_Str('/K=',Mparm_Str));
  175.     Return_Str = '<%' + Var_Name+ '>';
  176.     Rm('Mesys^Xlatecmdline');
  177.     Var_Value = Return_Str;
  178.     If( Var_Value == '') {
  179.         Msg ='';
  180.         Var_Value = 'Variable "' + Var_Name +
  181.                                        '" is not currently defined.';
  182.     } Else {
  183.         Msg = 'Current value of %' + Var_Name+ ' is:';
  184.       If(Svl(Var_Value) > (Screen_Width-10) ) {
  185.           Var_Value = Copy (Var_Value,1,Screen_Width-14) + ' ...';
  186.         }
  187.     }
  188.     Put_Box(2,5,Screen_Width-4,8,0,H_B_Color,Msg,True);
  189.                  Write(Var_Value,4,6,0,H_T_Color);
  190.                  Rm('Userin^Xmenu
  191.     /X=4/Y=5/S=1/T=0/B=0'); Kill_Box;
  192.     Goto_Mark;
  193.     Refresh = Ref;
  194.  };
  195.  
  196. # %#  (Internal Variable)
  197.  
  198.     ^B%#^b returns the number of command line arguments in a batch file.
  199.  
  200. ÷? %?  (Internal Variable)
  201.  
  202.     ^B%?^b returns the @EXITCODE[exit code] of the previous ^Bexternal^b command.
  203.       (see the @_?[%_?] variable - do not confuse with the @?[?] command).
  204.  
  205. _? %_?  (Internal Variable)
  206.  
  207.     ^B%_?^b returns the @EXITCODE[exit code] of the previous ^Binternal^b command.  Save this
  208.       value immediately; it is overwritten by the next internal command.
  209.       (see the @÷?[%? variable]).
  210.  
  211. CDPATH %CDPATH  (Environment Variable)
  212.  
  213.     ^B%CDPATH^b tells 4DOS where to search for directories names specified by
  214.       a @CD[CD] or @CDD[CDD] command.  4DOS will append the specified directory name
  215.       to each directory in ^B%CDPATH^b and attempt to change to that directory.
  216.       If you have already have a ^B%CDPATH^b environment variable, you can use
  217.       ^B%_CDPATH^b instead for the directory search.
  218.  
  219.       This variable can be viewed/modified with @SET[SET] or @ESET[ESET].
  220.  
  221.     (Select this @>4DOSME /K=CDPATH[link] to view the current contents of this variable)
  222.  
  223. CMDLINE %CMDLINE  (Environment Variable)
  224.  
  225.     @>4DOSME[%CMDLINE] is the fully expanded 255-character command line for the
  226.       external command.  You can access it from an external program by
  227.       searching the environment.
  228.  
  229.       This variable can be viewed/modified with @SET[SET] or @ESET[ESET].
  230.  
  231.     (Select this @>4DOSME /K=CMDLINE[link] to view the current contents of this variable)
  232.  
  233. COLORDIR %COLORDIR  (Environment Variable)
  234.  
  235.     @>4DOSME[%COLORDIR] is the "directory colorization" variable.  See the @DIR[DIR] and
  236.       @SELECT[SELECT] commands for usage.
  237.  
  238.   The format for COLORDIR is:
  239.  
  240.     ^Bext [...]:[bright][blink] fg [ON bg]; ...^b
  241.  
  242. where "^Bext^b" is the file extension, or one of the following file attributes:
  243.  
  244.     ^2DIRS^0 - directory
  245.     ^2RDONLY^0 - read-only file
  246.     ^2HIDDEN^0 - hidden file
  247.     ^2SYSTEM^0 - system file
  248.     ^2ARCHIVE^0 - file modified since last backup
  249.  
  250. COLORDIR uses the standard @COLORS[4DOS color attributes] and names.
  251.  
  252. The same information may also be entered with the "@ColorDir[ColorDir=]" INI directive.
  253. If variable COLORDIR is defined, it overrides any existing "ColorDir="
  254. directive.
  255.  
  256. For example, to display the .COM and .EXE files in red, the .C and
  257. .ASM files in bright cyan, and the read-only files in blinking green:
  258.  
  259.     set colordir=com exe:red; c asm:bright cyan; rdonly:blink green
  260.  
  261. If you don't select a background color, @DIR[DIR] and @SELECT[SELECT] will use the current
  262. screen background color.
  263.  
  264.       This variable can be viewed/modified with @SET[SET] or @ESET[ESET].
  265.  
  266.     (Select this @>4DOSME /K=COLORDIR[link] to view the current contents of this variable)
  267.  
  268. COMSPEC %COMSPEC  (Environment Variable)
  269.  
  270.     ^B%COMSPEC^b contains the path and filename that programs use to launch
  271.       a secondary shell.  Normally, this will be set automatically by 4DOS
  272.       as it installs itself.  However, in rare circumstances, you may wish
  273.       to load 4DOS.COM for secondary shells from a directory other than the
  274.       one it's in when you boot (for example, from a RAM disk).  In these
  275.       cases, you will need to reset the COMSPEC variable.  For example, if
  276.       you want to load secondary copies of 4DOS.COM from the root directory
  277.       of drive D, you would use this command:
  278.  
  279.                       set comspec=D:\4DOS.COM
  280.  
  281.       This variable can be viewed/modified with @SET[SET] or @ESET[ESET].
  282.  
  283. (Also see the @4StartPath[4StartPath] and @AutoExecPath[AutoExecPath] INI directives).
  284.  
  285.     (Select this @>4DOSME /K=COMSPEC[link] to view the current contents of this variable)
  286.  
  287. ÷PATH %PATH  (Environment Variable)
  288.  
  289.     ^B%PATH^b tells 4DOS where to search for executable files (.COM, .EXE, .BTM
  290.       and .BAT) not in the current directory.  Some applications also use
  291.       the ^B%PATH^b variable to find their files.
  292.       (see the @αPATH[@PATH function] and the @PATH[PATH command]).
  293.  
  294.       This variable can be viewed/modified with @SET[SET] or @ESET[ESET].
  295.  
  296.     (Select this @>4DOSME /K=PATH[link] to view the current contents of this variable)
  297.  
  298. TEMP %TEMP  (Environment Variable)
  299.  
  300.     ^B%TEMP^b specifies where 4DOS should put the temporary pipe files if the
  301.       variable @TEMP4DOS[%TEMP4DOS] doesn't exist.
  302.       (see @REDIRECTION[Redirection & Piping]).
  303.  
  304.       This variable can be viewed/modified with @SET[SET] or @ESET[ESET].
  305.  
  306.     (Select this @>4DOSME /K=PATH[link] to view the current contents of this variable)
  307.  
  308. TEMP4DOS %TEMP4DOS  (Environment Variable)
  309.  
  310.     ^B%TEMP4DOS^b specifies where 4DOS should put the temporary pipe files
  311.       (see @REDIRECTION[Redirection & Piping] and @TEMP[%TEMP]).
  312.  
  313.       This variable can be viewed/modified with @SET[SET] or @ESET[ESET].
  314.  
  315.     (Select this @>4DOSME /K=TEMP4DOS[link] to view the current contents of this variable)
  316.  
  317. _4VER %_4VER  (Internal Variable)
  318.  
  319.     ^B%_4VER^b returns the 4DOS version number (for example, 4.0).
  320.  
  321. _ALIAS %_ALIAS  (Internal Variable)
  322.  
  323.     ^B%_ALIAS^b is the free space in the @ALIAS[alias] list, in bytes.
  324.  
  325. (Also see the "@Alias[Alias]" INI directive).
  326.  
  327. _ANSI %_ANSI  (Internal Variable)
  328.  
  329.     ^B%_ANSI^b is 1 if there is an @ANSI[ANSI] device driver loaded.
  330.  
  331. _BATCH %_BATCH  (Internal Variable)
  332.  
  333.     ^B%_BATCH^b is the current batch nesting level (^B0^b if not in a batch file).
  334.  
  335. _BG %_BG  (Internal Variable)
  336.  
  337.     ^B%_BG^b is a string containing the screen background color at the current
  338.       cursor position.
  339.  
  340. _BOOT %_BOOT  (Internal Variable)
  341.  
  342.     ^B%_BOOT^b returns the boot disk (for example, C).
  343.  
  344. _CDPATH %_CDPATH  (Environment Variable)
  345.  
  346.       (see @CDPATH[%CDPATH]).
  347.  
  348. _CODEPAGE %_CODEPAGE  (Internal Variable)
  349.  
  350.     ^B%_CODEPAGE^b is the current code page number.
  351.  
  352. _COLUMN %_COLUMN  (Internal Variable)
  353.  
  354.     ^B%_COLUMN^b is the current cursor column. (see @_COLUMNS[%_COLUMNS]).
  355.  
  356. _COLUMNS %_COLUMNS  (Internal Variable)
  357.  
  358.     ^B%_COLUMNS^b is the current number of screen columns. (See @_COLUMN[%_COLUMN]).
  359.  
  360. _CPU %_CPU  (Internal Variable)
  361.  
  362.     ^B%_CPU^b is the CPU type:
  363.          ^B86^b  8086 and 8088
  364.         ^B186^b  80186 and 80188
  365.         ^B200^b  NEC V20 and V30
  366.         ^B286^b  80286
  367.         ^B386^b  80386
  368.         ^B486^b  80486
  369.  
  370. _CWD %_CWD  (Internal Variable)
  371.  
  372.     ^B%_CWD^b is the current directory in the format d:\pathname. (see @_CWDS[%_CWDS]).
  373.  
  374. _CWDS %_CWDS  (Internal Variable)
  375.  
  376.     ^B%_CWDS^b has the same value as @_CWD[%_CWD], except it ensures the pathname ends in
  377.       a backslash (\).
  378.  
  379. _CWP %_CWP  (Internal Variable)
  380.  
  381.     ^B%_CWP^b is the current directory in the format \pathname. (see @_CWPD[%_CWPS]).
  382.  
  383. _CWPS %_CWPS  (Internal Variable)
  384.  
  385.     ^B%_CWPS^b has the same value as @_CWP[%_CWP], except it ensures the pathname ends in
  386.       a backslash (\).
  387.  
  388. _DATE %_DATE  (Internal Variable)
  389.  
  390.     ^B%_DATE^b contains the current system date, in the format mm-dd-yy (U.S.),
  391.       dd-mm-yy (Europe), or yy-mm-dd (Japan).
  392.  
  393. (Also see @_DOW[%_DOW], @DATE[DATE] and @CHCP[CHCP]).
  394.  
  395. _DISK %_DISK  (Internal Variable)
  396.  
  397.     ^B%_DISK^b is the current disk (for example, C).
  398.  
  399. _DOS %_DOS  (Internal Variable)
  400.  
  401.     ^B%_DOS^b is the operating system type (^BDOS^b or ^BOS2^b).  This is useful
  402.       if you have .BTM files running in both modes.
  403.  
  404. _DOSVER %_DOSVER  (Internal Variable)
  405.  
  406.     ^B%_DOSVER^b is the current MS-DOS version (for example, 3.3).
  407.  
  408. _DOW %_DOW  (Internal Variable)
  409.  
  410.     ^B%_DOW^b is the current day (^BMon^b, ^BTue^b, ^BWed^b, etc.).
  411.  
  412. (Also see the @DATE[DATE] command and the @_DATE[%_DATE] variable).
  413.  
  414. _DV %_DV  (Internal Variable)
  415.  
  416.     ^B%_DV^b returns a ^B1^b if Quarterdeck's DESQview is loaded.
  417.  
  418. _ENV %_ENV  (Internal Variable)
  419.  
  420.     ^B%_ENV^b is the free space in the environment, in bytes.
  421. variables
  422. (Also see the "@Environment[Environment]=" and "@EnvFree[EnvFree=]" INI directives).
  423.  
  424. _FG %_FG  (Internal Variable)
  425.  
  426.     ^B%_FG^b is a string containing the screen foreground color at the current
  427.       cursor position.
  428.  
  429. _LASTDISK %_LASTDISK  (Internal Variable)
  430.  
  431.     ^B%_LASTDISK^b returns the last disk on the system (^BA^b - ^BZ^b).
  432.  
  433. _MONITOR %_MONITOR  (Internal Variable)
  434.  
  435.     ^B%_MONITOR^b is the monitor type (^BMONO^b or ^BCOLOR^b).
  436.  
  437. _MOUSE %_MOUSE  (Internal Variable)
  438.  
  439.     ^B%_MOUSE^b returns ^B1^b if a mouse is installed.
  440.  
  441. _NDP %_NDP  (Internal Variable)
  442.  
  443.     ^B%_NDP^b is the coprocessor type, returned as a string:
  444.           ^B0^b  no coprocessor is installed
  445.          ^B87^b  8087
  446.         ^B287^b  80287
  447.         ^B387^b  80387 or 80486
  448.  
  449. _ROW %_ROW  (Internal Variable)
  450.  
  451.     ^B%_ROW^b is the current cursor row. (see @_ROWS[%_ROWS]).
  452.  
  453. _ROWS %_ROWS  (Internal Variable)
  454.  
  455.     ^B%_ROWS^b is the current number of screen rows. (see @_ROW[%_ROW]).
  456.  
  457. _SHELL %_SHELL  (Internal Variable)
  458.  
  459.     ^B%_SHELL^b is the current shell nesting level (in swapping mode).  The
  460.       root shell is ^B0^b.  If you are not in swapping mode, ^B%_SHELL^b returns ^B99^b.
  461.  
  462. (Aloso see the @SWAPPING[SWAPPING] command and the "@Swapping[Swapping=]" INI directive).
  463.  
  464. _TIME %_TIME  (Internal Variable)
  465.  
  466.     ^B%_TIME^b contains the current system time in the format hh:mm:ss.  The
  467.       separator character may vary depending upon your country information.
  468.       (See @TIME[TIME] and @CHCP[CHCP])
  469.  
  470. _TRANSIENT %_TRANSIENT  (Internal Variable)
  471.  
  472.     ^B%_TRANSIENT^b returns a ^B1^b if the current shell is transient (started
  473.       with a ^B/C^b).
  474.  
  475. _VIDEO %_VIDEO  (Internal Variable)
  476.  
  477.     ^B%_VIDEO^b is the video card type (^BMONO^b, ^BCGA^b, ^BEGA^b, or ^BVGA^b).
  478.  
  479. _WIN %_VIDEO  (Internal Variable)
  480.  
  481.     ^B%_WIN^b returns the current Microsoft Windows mode:
  482.           ^B0^b  Windows not loaded
  483.           ^B1^b  Windows 2.x
  484.           ^B2^b  Windows 3.x 386 Enhanced mode
  485.           ^B3^b  Windows 3.x Real or Standard mode
  486.          ^^B20^b  OS/2 2.x DOS box
  487.  
  488. FUNCTIONS Variable Functions
  489.  
  490. @FUNCTIONS%Functions Index[Variable Functions] are pseudo-variables which take one or more arguments
  491. (which can themselves be environment variables or variable functions), and
  492. return a value.  The variable function name must be preceded by a ^B%^b
  493. (^B%@@eval^b, ^B%@@len^b, etc.).
  494.  
  495. Some functions return the number of bytes, kilobytes, or megabytes based
  496. on a "^Bb|k|m^b" argument:
  497.     ^Bb^b  bytes
  498.     ^Bk^b  bytes / 1000
  499.     ^BK^b  kilobytes (bytes / 1024)
  500.     ^Bm^b  bytes / 1,000,000
  501.     ^BM^b  megabytes (bytes / 1,048,576)
  502.  
  503. All variable functions must have square brackets ("^B[]^b) enclosing their argument(s).
  504.  
  505.  
  506.                   ^B Functions Index ^b
  507.  
  508.     @αALIAS[%@@ALIAS]           @αASCII[%@@ASCII]            @αATTRIB[%@@ATTRIB]            @CHAR[%@@CHAR]
  509.     @αDATE[%@@DATE]            @DESCRIPT[%@@DESCRIPT]         @DEVICE[%@@DEVICE]            @DISKFREE[%@@DISKFREE]
  510.     @DISKTOTAL[%@@DISKTOTAL]       @DISKUSED[%@@DISKUSED]         @DOSMEM[%@@DOSMEM]            @EMS[%@@EMS]
  511.     @EVAL[%@@EVAL]            @EXEC[%@@EXEC]             @EXT[%@@EXT]               @EXTENDED[%@@EXTENDED]
  512.     @FILEDATE[%@@FILEDATE]        @FILESIZE[%@@FILESIZE]         @FILETIME[%@@FILETIME]          @FULL[%@@FULL]
  513.     @INDEX[%@@INDEX]           @INT[%@@INT]              @αLABEL[%@@LABEL]             @LEN[%@@LEN]
  514.     @LINE[%@@LINE]            @LINES[%@@LINES]            @LOWER[%@@LOWER]             @LPT[%@@LPT]
  515.     @MAKEDATE[%@@MAKEDATE]        @MAKETIME[%@@MAKETIME]         @NAME[%@@NAME]              @αPATH[%@@PATH]
  516.     @READSCR[%@@READSCR]         @READY[%@@READY]            @REMOTE[%@@REMOTE]            @REMOVABLE[%@@REMOVABLE]
  517.     @SEARCH[%@@SEARCH]          @αSELECT[%@@SELECT]           @SUBSTR[%@@SUBSTR]            @αTIME[%@@TIME]
  518.     @αTRUENAME[%@@TRUENAME]        @UNIQUE[%@@UNIQUE]           @UPPER[%@@UPPER]             @WORD[%@@WORD]
  519.     @XMS[%@@XMS]
  520.  
  521. αALIAS %@ALIAS[]  (Function)
  522.  
  523.     ^B%@@ALIAS[name]^b returns the @ALIAS[alias] argument for the specified name.
  524.  
  525.       (see the @ALIAS[ALIAS Command]).
  526.  
  527. αASCII %@ASCII[]  (Function)
  528.  
  529.     ^B%@@ASCII[c]^b returns the @>SUPPORT^ASCII[ASCII] value of the specified character.
  530.  
  531. αATTRIB %@ATTRIB[]  (Function)
  532.  
  533.     ^B%@@ATTRIB[filename,attrib]^b returns a ^B1^b if the specified file
  534.       has the matching attribute(s), ^B0^b otherwise.  The attributes are:
  535.         ^2N^0  Normal (no attribute bits set)
  536.         ^2R^0  Read-only
  537.         ^2H^0  Hidden
  538.         ^2S^0  System
  539.         ^2D^0  Directory
  540.         ^2A^0  Archive
  541.       The attributes (other than ^2N^0) can be combined; ^BATTRIB^b will
  542.       only return a ^B1^b if _all_ the attributes match.
  543.       (see the @ATTRIB[ATTRIB Command]).
  544.  
  545. CHAR %@CHAR[]  (Function)
  546.  
  547.     ^B%@@CHAR[n]^b returns the character for the specified @>SUPPORT^ASCII[ASCII] value.
  548.  
  549. αDATE %@DATE[]  (Function)
  550.  
  551.     ^B%@@DATE[mm/dd/yy]^b returns the number of days since 1/1/80 for the
  552.       specified date.  ^BDATE^b will use the date format mandated by your
  553.       country code (dd/mm/yy in Europe; yy/mm/dd in Japan).
  554.       (see the @MAKEDATE[@MAKEDATE] function, the @_DATE[%_DATE variable] and
  555.       the @DATE[DATE command]).
  556.  
  557. DESCRIPT %@DESCRIPT[]  (Function)
  558.  
  559.     ^B%@@DESCRIPT[filename]^b returns the file's description.
  560.  
  561. DEVICE %@DEVICE[]  (Function)
  562.  
  563.     ^B%@@DEVICE[name]^b returns a ^B1^b if the specified name is a character device.
  564.  
  565. DISKFREE %@DISKFREE[]  (Function)
  566.  
  567.     ^B%@@DISKFREE[d:,b|k|m]^b returns the free disk space for the specified
  568.       drive, in bytes, kilobytes, or megabytes.
  569.  
  570. DISKTOTAL %@DISKTOTAL[]  (Function)
  571.  
  572.     ^B%@@DISKTOTAL[d:,b|k|m]^b returns the total disk space for the specified
  573.       drive, in bytes, kilobytes, or megabytes.
  574.  
  575. DISKUSED %@DISKUSED[]  (Function)
  576.  
  577.     ^B%@@DISKUSED[d:,b|k|m]^b returns the disk space used on the specified
  578.       drive, in bytes, kilobytes, or megabytes.
  579.  
  580. DOSMEM %@DOSMEM[]  (Function)
  581.  
  582.     ^B%@@DOSMEM[b|k|m]^b returns the free MS-DOS memory in bytes, kilobytes,
  583.       or megabytes.
  584.  
  585. EMS %@EMS[]  (Function)
  586.  
  587.     ^B%@@EMS[b|k|m]^b returns the free EMS memory in bytes, kilobytes, or
  588.       megabytes.
  589.  
  590. EVAL %@EVAL[]  (Function)
  591.  
  592.     ^B%@@EVAL[expression]^b evaluates an arithmetic expression.  It supports
  593.       addition (^B+^b), subtraction (^B-^b), multiplication (^B*^b), division (^B/^b), and
  594.       modulo (^B%%^b).  The expression can contain environment variables,
  595.       including other variable functions.  ^BEVAL^b supports commas and
  596.       decimal places; the maximum size is 16.8 (16 integer and 8 decimal
  597.       places).  ^BEVAL^b strips leading and trailing zeros from the result.
  598.  
  599. EXEC %@EXEC[]  (Function)
  600.  
  601.     ^B%@@EXEC[command]^b executes the command and returns its exit code.
  602.       The command can be an alias, an internal 4DOS command, or an external
  603.       program or batch file.  This is a back door entry to 4DOS command
  604.       processing -- ^B^Kuse with caution!^k^b
  605.  
  606. EXT %@EXT[]  (Function)
  607.  
  608.      ^B%@@EXT[filename]^b returns the file extension (without a leading period).
  609.  
  610. EXTENDED %@EXTENDED[]  (Function)
  611.  
  612.     ^B%@@EXTENDED[b|k|m]^b returns the amount of extended memory in bytes,
  613.       kilobytes, or megabytes.
  614.  
  615. FILEDATE %@FILEDATE[]  (Function)
  616.  
  617.     ^B%@@FILEDATE[filename]^b returns the last modified date of the file, in
  618.       the default country format (mm-dd-yy for US).
  619.  
  620. FILESIZE %@FILESIZE[]  (Function)
  621.  
  622.     ^B%@@FILESIZE[filename,b|k|m]^b returns the size of the file in bytes,
  623.       kilobytes, or megabytes.
  624.  
  625. FILETIME %@FILETIME[]  (Function)
  626.  
  627.     ^B%@@FILETIME[filename]^b returns the last modified time of the file, in
  628.       hh:mm format.
  629.  
  630. FULL %@FULL[]  (Function)
  631.  
  632.     ^B%@FULL[filename]^b returns the fully qualified path name.
  633.  
  634. INDEX %@INDEX[]  (Function)
  635.  
  636.     ^B%@@INDEX[string1,string2]^b returns the position of string2 within
  637.       string1, or ^B-1^b if string2 is not found.  The first position in
  638.       string1 is ^B0^b.
  639.  
  640.  
  641.     ^1Other Links into this File:^0
  642.     ───────────────────────────
  643.     ^1Index of^0 @≈INDEX[Chapters]               @VARIABLES%Variables Index[Variables] ^1Index^0
  644.     @FUNCTIONS%Functions[Functions] ^1Index^0                 @COMMANDS%Commands Index[Commands & Keywords] ^1Index^0
  645.         ^1Index of^0 @DIRECTIVES[4DOS.INI Directives]
  646.  
  647. INT %@INT[]  (Function)
  648.  
  649.     ^B%@@INT[n]^b returns the integer part of "^Bn^b".  See @αEVAL[%@@EVAL].
  650.  
  651. αLABEL %@LABEL[]  (Function)
  652.  
  653.     ^B%@@LABEL[d:]^b returns the volume label of the specified disk.
  654.  
  655.      (see the @LABEL[LABEL command]).
  656.  
  657. LEN %@LEN[]  (Function)
  658.  
  659.     ^B%@@LEN[string]^b returns the length of the string.
  660.  
  661. LINE %@LINE[]  (Function)
  662.  
  663.     ^B%@@LINE[filename,n]^b returns line "^Bn^b" from the specified file.  If you
  664.       specify "^BCON^b" for the filename, it will read from standard input.
  665.  
  666.       (see @LINES[@@LINES]).
  667.  
  668. LINES %@LINES[]  (Function)
  669.  
  670.     ^B%@@LINES[filename]^b returns the number of lines in the specified file,
  671.       base ^B0^b.  If there are no lines, it returns ^B-1^b.
  672.  
  673.       (see @LINE[@@LINE]).
  674.  
  675. LOWER %@LOWER[]  (Function)
  676.  
  677.     ^B%@@LOWER[string]^b returns the string converted to lower case.
  678.  
  679. LPT %@LPT[]  (Function)
  680.  
  681.     ^B%@@LPT[n]^b returns a ^B1^b if the specified printer (n = ^B1^b, ^B2^b or ^B3^b) is ready,
  682.       ^B0^b otherwise.
  683.  
  684. MAKEDATE %@MAKEDATE[]  (Function)
  685.  
  686.     ^B%@@MAKEDATE[n]^b returns the date, given the number of days since 1/1/80.
  687.  
  688.      (see the @αDATE[@DATE] function).
  689.  
  690. MAKETIME %@MAKETIME[]  (Function)
  691.  
  692.     ^B%@@MAKETIME[n]^b returns the time, given the number of seconds since
  693.       midnight.
  694.  
  695.       (see the @αTIME[@TIME] function).
  696.  
  697. NAME %@NAME[]  (Function)
  698.  
  699.     ^B%@@NAME[filename]^b returns the filename only (no path or extension).
  700.  
  701. αPATH %@PATH[]  (Function)
  702.  
  703.     ^B%@PATH[filename]^b returns the path only, including the trailing
  704.       backslash.
  705.  
  706.       (see the @÷PATH[%PATH variable] and the @PATH[PATH Command]).
  707.  
  708. READSCR %@READSCR[]  (Function)
  709.  
  710.     ^B%@@READSCR[row,column,length]^b returns the text on the screen at the
  711.       specified row and column, for the specified length.
  712.  
  713. READY %@READY[]  (Function)
  714.  
  715.     ^B%@@READY[d:]^b returns a ^B1^b if the specified drive is ready.
  716.  
  717. REMOTE %@REMOTE[]  (Function)
  718.  
  719.     ^B%@@REMOTE[d:]^b returns a ^B1^b if the specified drive is remote (LAN).
  720.  
  721. REMOVABLE %@REMOVABLE[]  (Function)
  722.  
  723.     ^B%@@REMOVABLE[d:]^b returns a ^B1^b if the specified drive is removable.
  724.  
  725. SEARCH %@SEARCH[]  (Function)
  726.  
  727.     ^B%@@SEARCH[filename]^b searches for the filename using the @÷PATH[%PATH]
  728.       environment variable, appending an extension (.COM, .EXE, .BAT,
  729.       .BTM, or executable extension) if one wasn't specified.
  730.  
  731. αSELECT %@SELECT[]  (Function)
  732.  
  733.     ^B%@@SELECT[filename,top,left,bottom,right,title]^b displays the file
  734.       as a popup selection list.  If you press ^BEnter^b, it returns the
  735.       string highlighted by the selection bar; if you press ^BEsc^b it returns
  736.       an empty string.
  737.       (see the @SELECT[SELECT Command])
  738.  
  739. SUBSTR %@SUBSTR[]  (Function)
  740.  
  741.     ^B%@@SUBSTR[string,start,length]^b returns a substring, starting at the
  742.       position "start" and continuing for "length" characters.  If the
  743.       length is negative, the start is relative to the right side.  If
  744.       the length isn't specified, ^BSUBSTR^b will return the remainder of
  745.       the string.  For example, ^B%@@SUBSTR[%_time,0,2]^b gets the current
  746.       time and extracts the hour.  If the string includes commas it must
  747.       be quoted with double quotes or back-quotes (^B"^b or ^B`^b).
  748.  
  749. αTIME %@TIME[]  (Function)
  750.  
  751.     ^B%@@TIME[hh:mm:ss]^b returns the number of seconds since midnight for the
  752.       specified time.  The time must be in 24-hour format.
  753.       (see the @MAKETIME[@MAKETIME] function, the @_TIME[%_TIME variable], and
  754.       the @TIME[TIME command]).
  755.  
  756. αTRUENAME %@TRUENAME[]  (Function)
  757.  
  758.     ^B%@@TRUENAME[filename]^b returns the true fully expanded name for the
  759.       specified file.  ^BTRUENAME^b will see "through" a @JOIN[JOIN] or @SUBST[SUBST], and
  760.       requires MS-DOS 3.0 or above.
  761.       (see the @TRUENAME[TRUENAME Command]).
  762.  
  763. UNIQUE %@UNIQUE[]  (Function)
  764.  
  765.     ^B%@@UNIQUE[d:\path]^b returns a unique filename in the specified drive
  766.       and path.  This function will only work with DOS 3 or higher.
  767.  
  768. UPPER %@UPPER[]  (Function)
  769.  
  770.     ^B%@@UPPER[string]^b returns the string converted to upper case.
  771.  
  772. WORD %@WORD[]  (Function)
  773.  
  774.     ^B%@@WORD[n,string]^b returns the "^Bn^bth" word in the string (base ^B0^b).  If
  775.       "^Bn^b" is negative, ^BWORD^b starts from the end and counts backwards.
  776.  
  777. XMS %@XMS[]  (Function)
  778.  
  779.     ^B%@@XMS[b|k|m]^b returns the free XMS memory in bytes, kilobytes, or
  780.       megabytes.
  781.  
  782. ANSI ANSI Sequences
  783.  
  784. The presence of an ANSI driver can be tested with the @÷ANSI[ANSI variable].
  785. (Also see the "@ANSI=[ANSI=]" INI Directive).
  786.  
  787. This section is a quick-reference to commonly-used @ANSI%Commands[ANSI commands].  This
  788. information is generally applicable to the MS-DOS ^BANSI.SYS^b driver, and
  789. to other ANSI drivers such as ^BFANSI-Console^b, ^BANSI.COM^b, ^BNANSI.SYS^b, etc.
  790.  
  791. Note that ANSI drivers vary widely in how much of the ANSI Standard they
  792. implement.  See the documentation for the driver you use for more details.
  793.  
  794. An ^BANSI.SYS^b command string consists of three parts:
  795.  
  796.     ^BESC[^b        The @>SUPPORT^ASCII[ASCII] character ^BESC^b, followed by a left bracket.
  797.                 These two characters must be present in all ANSI strings.
  798.  
  799.     ^Bparameters^b  Optional parameters for the command.  If there are
  800.                 multiple parameters they are separated by semicolons.
  801.  
  802.     ^Bcmd^b         A single-letter command.  The case of the letter IS
  803.                 meaningful.
  804.  
  805. For example, to position the cursor to row 7, column 12 the ANSI command is:
  806.  
  807.     ^BESC[7;12H^b
  808.  
  809. To transmit ANSI commands to the screen with 4DOS, you should use the
  810. @ECHO[ECHO] command.  The ^BESC^b character can be generated by inserting it
  811. into the string directly (if you are putting the string in a batch
  812. file and your editor will insert such a character), or by using
  813. 4DOS's internal "escape" character (ctrl-X, appearing as ^B^b) followed
  814. by a lower-case "^Be^b".  For example, the sequence shown above could be
  815. transmitted from a batch file with either of these commands (the first
  816. uses an ^BESC^b character directly; the second uses ^Be^b):
  817.  
  818.     ^Becho 2H^b
  819.     ^Becho e[7;12H^b
  820.  
  821. You can also include ANSI commands in your prompt, using ^B$e^b to transmit the
  822. ^BESC^b character.  You can ^BNOT^b use @PROMPT[PROMPT] to transmit ANSI commands to the
  823. screen from a batch file.
  824.  
  825.  
  826.                                   ^BCommands^b
  827.  
  828.     Command              Description
  829.     ------------------   ---------------------------------------------------
  830.     ^BESC[^brows^BA^b            Cursor up
  831.     ^BESC[^brows^BB^b            Cursor down
  832.     ^BESC[^bcols^BC^b            Cursor right
  833.     ^BESC[^bcols^BD^b            Cursor left
  834.     ^BESC[^brow^B;^bcol^BH^b         Set cursor position (top left is row 1, column 1)
  835.     ^BESC[2J^b               Clear screen
  836.     ^BESC[K^b                Clear from cursor to end of line
  837.     ^BESC[J^b                Clear from cursor to end of screen
  838.     ^BESC[^brow^B;^bcol^Bf^b         Set cursor position, same as "^BH^b" command
  839.     ^BESC[=^bmode^Bh^b           Set display mode; see table of mode values below
  840.     ^BESC[=^bmode^Bl^b           Set display mode; see table of mode values below
  841.     ^BESC[^battr^B;^battr^B;^b...^Bm^b   Set display attributes; see table of attribute
  842.                          values below
  843.     ^BESC[^bkey^B;^bstring^B;^b...^Bp^b  Substitute "string" for the specified key; see key
  844.                          substitutions section below.
  845.     ^BESC[s^b                Save cursor position (may not be nested)
  846.     ^BESC[u^b                Restore cursor position after a save
  847.  
  848.  
  849.                              ^BDisplay Attributes^b
  850.  
  851.     Attribute      Description
  852.     ---------      ---------------------------------------------------
  853.         ^B0^b          All attributes off (normal white on black)
  854.         ^B1^b          High intensity (bold)
  855.         ^B2^b          Normal intensity
  856.         ^B4^b          Underline (usually effective only on monochrome displays)
  857.         ^B5^b          Blinking
  858.         ^B7^b          Reverse Video
  859.         ^B8^b          Invisible
  860.         ^B30^b-^B37^b      Set the foreground color:
  861.                      ^B30^b=Black   ^B31^b=Red       ^B32^b=Green   ^B33^b=Yellow
  862.                      ^B34^b=Blue    ^B35^b=Magenta   ^B36^b=Cyan    ^B37^b=White
  863.         ^B40^b-^B47^b      Set the background color, same values as above but
  864.                    substitute ^B40^b for ^B30^b etc.
  865.  
  866. Settings are cumulative, so (for example) to set bright red foreground set
  867. all attributes off, then set red, then bold:  ^Becho ^b.
  868.  
  869.  
  870.                                ^BDisplay Modes^b
  871.  
  872.     Mode           Description
  873.     ----           ---------------------------------------------------
  874.      ^B0^b             Text 40x25 monochrome
  875.      ^B1^b             Text 40x25 color
  876.      ^B2^b             Text 80x25 monochrome
  877.      ^B3^b             Text 80x25 color
  878.      ^B4^b             Graphics 320x200 4-color
  879.      ^B5^b             Graphics 320x200 4-color
  880.      ^B6^b             Graphics 640x200 2-color
  881.      ^B7^b             (cursor wrap kludge)
  882.  
  883. Mode ^B7^b is an unfortunate kludge; Setting mode ^B7^b with an "^Bh^b" command tells
  884. ANSI to wrap text to the next line when it passes the end of a line; setting
  885. mode ^B7^b with an "^Bl^b" (lower-case L) command tells ANSI not to wrap text.  For
  886. all other modes the "^Bh^b" and "^bl^b" commands are equivalent.
  887.  
  888.  
  889.                              ^BKey Substitutions^b
  890.  
  891. The key substitutions ("^Bp^b") command causes ANSI to substitute the text in
  892. "string" when the specified key is pressed.  The key code can be a single
  893. character in quotes, a numeric @>SUPPORT^ASCII[ASCII] value, or an extended code for a non
  894. ASCII key (e.g. function or cursor keys) in the form ^B0;n^b, where ^Bn^b is the scan
  895. code for the key.
  896.  
  897. The string to be substituted can be a single character or character string
  898. in quotes, a numeric @>SUPPORT^ASCII[ASCII] value, or an extended key code.
  899.  
  900. Key substitutions set up with your ANSI driver will be in effect for 4DOS and
  901. for any other program which uses MS-DOS to read the keyboard.
  902.  
  903. To clear a key substitution, "substitute" the original key for itself (see
  904. examples).
  905.  
  906.  
  907.                                   ^BExamples^b
  908.  
  909. Clear the display attributes, then set the display to bright cyan on blue,
  910. and clear the screen:
  911.  
  912.     ^Becho e[0;44;36;1me[2J^b
  913.  
  914. Substitute ^B"dir"<cr>^b for ^BF4^b:
  915.  
  916.     ^Becho e[0;62;"dir";13p^b
  917.  
  918. Undo the above substitution:
  919.  
  920.     ^Becho e[0;62;0;62p^b
  921.  
  922. Set up a prompt which saves the cursor position, displays the 4DOS shell
  923. level, date, and time on the top line in bright white on magenta, and then
  924. restores the cursor position and sets the color to bright cyan on blue, and
  925. displays the standard prompt:
  926.  
  927.     ^Bprompt $e[s$e[1;1f$e[0;45;37;1m$e[K($z)   $d   $t$e[u$e[0;44;36;1m$p$g^b
  928.  
  929. COLORS Color Attributes and Names
  930.  
  931. Several 4DOS commands accept color directives of the form:
  932.  
  933.                ^B[bright][blink] fg [ON bg] [BORDER bc]^b
  934.  
  935. where ^Bfg^b is the foreground color, ^Bbg^b the background color, and ^Bbc^b" is the
  936. border color (not available on all display adapters and screen modes).
  937.  
  938. Only the first three characters of the color names and attributes ("^2bri^0^Bght^b",
  939. "^2bli^0^Bnk^b" and "^2BOR^0^Bder^b") are required.
  940.  
  941. The available color names are:
  942.  
  943.     ^2Bla^0^Bck^b      ^2Blu^0^Be^b      ^2Gre^0^Ben^b      ^2Red^0
  944.     ^2Mag^0^Benta^b    ^2Cya^0^Bn^b      ^2Yel^0^Blow^b     ^2Whi^0^Bte^b
  945.  
  946. Also see @ANSI[ANSI], @COLORDIR[%COLORDIR], and related topics.
  947.  
  948. EXITCODE Exit Code
  949.  
  950. When an internal command or external program finishes, it returns a result
  951. called the @EXITCODE[exit code].  4DOS's @CONDITIONAL[conditional commands] allow you
  952. to perform tasks based upon the previous command's exit code.
  953.  
  954. 4DOS internal commands return the following exit codes:
  955.  
  956.     ^B0^b - normal (successful) exit
  957.     ^B1^b - usage/syntax error
  958.     ^B2^b - other error (DOS errors)
  959.     ^B3^b - terminated with a Cltr-C or Ctrl-Break
  960.  
  961. Most external programs return a ^B0^b if they are successful and a non-zero
  962. value if they encounter an error.
  963.  
  964.      (see @÷?[%?], @_?[%_?], and @IF%ERRORLEVEL[ERRORLEVEL]).
  965.  
  966. && &&  "AND" Conditional Command
  967.  
  968.      (see @CONDITIONAL%&&[Conditional Commands]).
  969.  
  970. || ||  "OR" Conditional Command
  971.  
  972.      (see @CONDITIONAL%||[Conditional Commands]).
  973.  
  974. CONDITIONAL Conditional Commands
  975.  
  976.      If you separate two commands by ^B&&^b (AND), the second command
  977.      will be executed only if the first returns an ^Bexit code^b of ^B0^b.
  978.      For example, the following command will only erase files if
  979.      the BACKUP operation succeeds:
  980.  
  981.               c:\> backup c:\ a: && del c:\*.bak;*.lst
  982.  
  983.     If you separate two commands by ^B||^b (OR), the second command
  984.     will be executed only if the first returns a non-zero ^Bexit
  985.     code^b.  For example, if the following BACKUP operation fails,
  986.     then ECHO will display a message:
  987.  
  988.             c:\> backup c:\ a: || echo Error in the backup!
  989.  
  990.     All 4DOS internal commands return an explicit @EXITCODE[exit code], but
  991.     not all application programs do.  Conditional commands will
  992.     behave unpredictably if you use them with programs which do
  993.     not return an explicit exit code.
  994.  
  995. INCLUDE Include Lists
  996.  
  997.          Any 4DOS command that accepts multiple filenames can also
  998.          accept one or more include lists.  An include list is simply a
  999.          group of filenames, with or without @WILDCARDS[wildcards], separated by
  1000.          semi-colons [^B;^b].  All files in the include list must be in the
  1001.          same directory.  You may not add a space on either side of the
  1002.          semi-colon.
  1003.  
  1004.      Examples are:
  1005.  
  1006.               c:\> copy *.txt;*.doc a:
  1007.               c:\> copy a:\details\*.txt;*.doc c:
  1008.  
  1009.          Include lists are similar to multiple filenames, but have
  1010.          three important differences.  First, you don't have to repeat
  1011.          the path to your files if you use an include list, because all
  1012.          of the included files must be in the same directory.  Second,
  1013.          if you use include lists, you aren't as likely to accidentally
  1014.          overwrite files if you forget a destination path for commands
  1015.          like COPY, because the last name in the list will be part of
  1016.          the include list, and won't be seen as the destination file
  1017.          name.  Include lists can only be used as the source parameter
  1018.          (the location files are coming from) for @COPY[COPY] and other
  1019.          similar commands.  They cannot be used to specify a
  1020.          destination for files.
  1021.  
  1022.          Third, multiple filenames and include lists are processed
  1023.          differently by the 4DOS @DIR[DIR] and @SELECT[SELECT] commands.  If you use
  1024.          multiple filenames, all of the files matching the first
  1025.          filename are processed, then all of the files matching the
  1026.          second name, and so on.  When you use an include list, all
  1027.          files that match any entry in the include list are processed
  1028.          together, and will appear together in the directory display or
  1029.          SELECT list.  You can see this difference most clearly if you
  1030.          experiment with both techniques and the DIR command.  For
  1031.          example,
  1032.  
  1033.                    c:\> dir *.txt *.doc
  1034.  
  1035.          will list all the .TXT files with a directory header, the file
  1036.          list, and a summary of the total number of files and bytes
  1037.          used.  Then it will do the same for the .DOC files.  However,
  1038.  
  1039.                    c:\> dir *.txt;*.doc
  1040.  
  1041.          will display all the files in one list.
  1042.  
  1043.          Like extended @WILDCARDS[wildcards] and multiple filenames, the 4DOS
  1044.          ^Binclude list^b feature will work with internal 4DOS commands
  1045.          but not with external programs unless they have been programmed
  1046.          especially to parallel 4DOS's features.
  1047.  
  1048. REDIRECTION Redirection & Piping
  1049.  
  1050. DOS assumes input comes from the keyboard and output goes to the display.
  1051. The keyboard is referred to as standard input, and the display is referred
  1052. to as standard output.  You can change the default standard input and
  1053. standard output by using the ^B<^b and ^B>^b symbols on the command line.  4DOS
  1054. also allows you to redirect the standard error by appending an ^B&^b character.
  1055.  
  1056. To get standard input from a file instead of the keyboard:
  1057.  
  1058.     ^B<^b filename
  1059.  
  1060. To redirect standard output to a file:
  1061.  
  1062.     ^B>^b filename
  1063.  
  1064. To redirect standard output and standard error to a file:
  1065.  
  1066.     ^B>&^b filename
  1067.  
  1068. To redirect standard error only to a file:
  1069.  
  1070.     ^B>&>^b filename
  1071.  
  1072. To append standard output or standard error to a file, use "^B>>^b" in place of
  1073. the first ^B>^b.  If @SETDOS%NOCLOBBER[NOCLOBBER] is set, the file must exist before it can be
  1074. appended to (unless overridden by a ^B!^b).  Otherwise, 4DOS will create the
  1075. file.
  1076.  
  1077. To send the standard output of "cmd1" to the standard input of "cmd2":
  1078.  
  1079.     cmd1 ^B|^b cmd2
  1080.  
  1081. To send the standard output and standard error of "cmd1" to the standard
  1082. input of "cmd2":
  1083.  
  1084.     cmd1 ^B|&^b cmd2
  1085.  
  1086. 4DOS creates temporary files to hold the output of the pipes.  The default
  1087. directory for these temporary files is the root directory of the boot
  1088. drive, but this can be overridden with the @TEMP4DOS[TEMP4DOS] or @TEMP[TEMP] environment
  1089. variables (see @VARIABLES[VARIABLES]).
  1090.  
  1091. GROUPING Command Grouping
  1092.  
  1093. Command grouping allows you to logically group a set of commands together
  1094. by enclosing them with parentheses.  For example, this grouping:
  1095.  
  1096.     ^B(^bglobal /iq echo %_cwd^B)^b > dirlist
  1097.  
  1098. allows you to redirect all output from @GLOBAL[GLOBAL] to the specified file.  The
  1099. following command will take the output of @DIR[DIR] and @TYPE[TYPE], sort the whole
  1100. mess, and save it in the file AZ:
  1101.  
  1102.     ^B(^bdir *.com ^^ type autoexec.bat^B)^b | sort > AZ
  1103.  
  1104. To group commands, the first character of the command must begin with a
  1105. '^B(^b'.  Note that if you have a close parenthesis '^B)^b' in a filename, you'll
  1106. need to "escape" it to keep 4DOS from assuming it's the end of the command
  1107. group.
  1108.  
  1109. You can also use command grouping to split commands over several lines.
  1110. For example:
  1111.  
  1112.     for %x in (*.c) do ^B(^b
  1113.         echo %x
  1114.         dir *.c
  1115.     ^B)^b
  1116.  
  1117. WILDCARDS Wildcards
  1118.  
  1119. Wildcards let you specify a file or group of files by typing a partial
  1120. filename.  4DOS scans the appropriate directory to find all of the files
  1121. that match the partial name you have specified.
  1122.  
  1123. Most 4DOS commands accept filenames with wildcards anywhere that a full
  1124. filename can be used.  4DOS recognizes 2 wildcard characters, the asterisk
  1125. [^B*^b] and the question mark [^B?^b], plus a special method of specifying a range
  1126. of permissible characters.  You can combine various wildcard types in a
  1127. single filename.  Note that 4DOS wildcard extensions are not interpreted
  1128. properly by most external programs, so when passing file names to external
  1129. programs you must continue to use the traditional wildcard syntax.
  1130.  
  1131. An asterisk [^B*^b] in a filename means "any zero or more characters in this
  1132. position."  Normally, DOS (and COMMAND.COM) only allows trailing asterisks
  1133. (it will ignore any characters following an asterisk until the end of the
  1134. filename or extension).  4DOS allows both leading and trailing asterisks.
  1135. For example, to get a directory of all files beginning with "ab":
  1136.  
  1137.     ^Bdir ab*.*^b
  1138.  
  1139. To get a directory of all files with an "ab" somewhere in the filename:
  1140.  
  1141.     ^Bdir *ab*.*^b
  1142.  
  1143. A question mark [^B?^b] matches any single filename character.  A ^B?^b doesn't
  1144. require that a character exist if it's at the end of the filename or
  1145. extension.
  1146.  
  1147. 4DOS 4.0 includes a new wildcard type.  It acts like a ^B?^b except that it
  1148. always requires a character to be in that position, and it allows
  1149. you to specify ranges or exclude specific characters.  The square brackets
  1150. ^B[]^b delimit the set of characters to be tested.  If you enter a "^B!^b" as the
  1151. first character following the left bracket, the test is reversed (only
  1152. return names that DON'T match).  If you list several characters (i.e.,
  1153. ^B[abc]^b) 4DOS will return those filenames that have any of those characters
  1154. in the specified position.  If you separate two characters with a dash (^B-^b)
  1155. 4DOS will return those filenames that have a character equal to or greater
  1156. than the first character, and less than or equal to the second character.
  1157.  
  1158. For example, to get a directory of all filenames with either a "p" or "q"
  1159. as the first letter of the filename:
  1160.  
  1161.     ^Bdir [pq]*.*^b
  1162.  
  1163. To get a directory of all filenames beginning with a number from
  1164. 1 to 6, or the letters "a" or "b", and ending with a "9":
  1165.  
  1166.     ^Bdir [1-6ab]*[9].*^b
  1167.  
  1168. KEYS Key Names & Scan Codes
  1169.  
  1170.  
  1171. (see @ALIAS[ALIAS], @INKEY[INKEY], @INPUT[INPUT] and @KEYSTACK[KEYSTACK]).
  1172.  
  1173.              @KEYS%Key Names[Key Names]
  1174.  
  1175.           (see below for @KEYS%Scan Codes and Key Codes[Scan Codes / Key Codes])
  1176.  
  1177. The format for a key name is:  [Prefix^B-^b]Keyname.  The prefix and key name
  1178. must be separated by a ^Bdash^b.  The prefix can be left out, or it can be
  1179. any of the following:
  1180.  
  1181.         ^BAlt^b     followed by A - Z, 0 - 9, F1 - F12, or Bksp
  1182.         ^BCtrl^b    followed by A - Z, F1 - F12, Bksp, Enter,
  1183.                 Left, Right, Home, End, PgUp, PgDn, Ins, or Del
  1184.         ^BShift^b   followed by F1 - F12 or Tab.
  1185.  
  1186. The possible key names are:
  1187.  
  1188.         ^BA^b - ^BZ       Esc         Up          PgUp^b
  1189.         ^B0^b - ^B9       Bksp        Down        PgDn^b
  1190.         ^BF1^b - ^BF12    Tab         Left        Home^b
  1191.         ^BIns         Enter       Right       End^b
  1192.         ^BDel^b
  1193.  
  1194. Examples:
  1195.  
  1196.      Ctrl-Home
  1197.      Shift-F1
  1198.      Alt-Q
  1199.      Enter
  1200.  
  1201.  
  1202.                      @KEYS%Scan Codes[Scan Codes and Key Codes]
  1203.  
  1204.                         (see above for @KEYS%Key Names[Key Names])
  1205.  
  1206. Please refer to your 4DOS documentation for details on the following charts.
  1207. Note that your BIOS may not report all key combinations.
  1208.  
  1209.        ^BScan Codes and Key Codes for Top Two Keyboard Rows^b
  1210.               (also see @KEYS%Bottom Two Keyboard Rows[Bottom Two Rows] and @KEYS%Keypad and Function Keys[Keypad/F-Keys])
  1211.  
  1212.                                     Shift  Shift  Ctrl   Ctrl   Alt
  1213.            Key Cap    Scan   ASCII  Scan   ASCII  Scan   ASCII  Scan
  1214.            Symbol     Code   Code   Code   Code   Code   Code   Code
  1215.            -------    -----  -----  -----  -----  -----  -----  -----
  1216.            Esc        1      27     1      27     1      27     1
  1217.            1  !       2      49     2      33                   120
  1218.            2  @@       3      50     3      64     3      0      121
  1219.            3  #       4      51     4      35                   122
  1220.            4  $       5      52     5      36                   123
  1221.            5  %       6      53     6      37                   124
  1222.            6  ^^       7      54     7      94     7      30     125
  1223.            7  &       8      55     8      38                   126
  1224.            8  *       9      56     9      42                   127
  1225.            9  (       10     57     10     40                   128
  1226.            0  )       11     48     11     41                   129
  1227.            -  _       12     45     12     95     12     31     130
  1228.            =  +       13     61     13     43                   131
  1229.            Backspace  14     8      14     8      14     127    14
  1230.            Tab        15     9      15     0      148    0      165
  1231.            Q          16     113    16     81     16     17     16
  1232.            W          17     119    17     87     17     23     17
  1233.            E          18     101    18     69     18     5      18
  1234.            R          19     114    19     82     19     18     19
  1235.            T          20     116    20     84     20     20     20
  1236.            Y          21     121    21     89     21     25     21
  1237.            U          22     117    22     85     22     21     22
  1238.            I          23     105    23     73     23     9      23
  1239.            O          24     111    24     79     24     15     24
  1240.            P          25     112    25     80     25     16     25
  1241.            [  {       26     91     26     123    26     27     26
  1242.            ]  }       27     93     27     125    27     29     27
  1243.            Enter      28     13     28     13     28     10     28
  1244.  
  1245.  
  1246.       ^BScan Codes and Key Codes for Bottom Two Keyboard Rows^b
  1247.                 (also see @KEYS%Top Two Keyboard Rows[Top Two Rows] and @KEYS%Keypad and Function Keys[Keypad/F-Keys])
  1248.  
  1249.                                     Shift  Shift  Ctrl   Ctrl   Alt
  1250.            Key Cap    Scan   ASCII  Scan   ASCII  Scan   ASCII  Scan
  1251.            Symbol     Code   Code   Code   Code   Code   Code   Code
  1252.            -------    -----  -----  -----  -----  -----  -----  -----
  1253.            A          30     97     30     65     30     1      30
  1254.            S          31     115    31     83     31     19     31
  1255.            D          32     100    32     68     32     4      32
  1256.            F          33     102    33     70     33     6      33
  1257.            G          34     103    34     71     34     7      34
  1258.            H          35     104    35     72     35     8      35
  1259.            J          36     106    36     74     36     10     36
  1260.            K          37     107    37     75     37     11     37
  1261.            L          38     108    38     76     38     12     38
  1262.            ;  :       39     59     39     58                   39
  1263.            '  "       40     39     40     34                   40
  1264.            `  ~       41     96     41     126                  41
  1265.            \  |       43     92     43     124    43     28     43
  1266.            Z          44     122    44     90     44     26     44
  1267.            X          45     120    45     88     45     24     45
  1268.            C          46     99     46     67     46     3      46
  1269.            V          47     118    47     86     47     22     47
  1270.            B          48     98     48     66     48     2      48
  1271.            N          49     110    49     78     49     14     49
  1272.            M          50     109    50     77     50     13     50
  1273.            ,  <       51     44     51     60                   51
  1274.            .  >       52     46     52     62                   52
  1275.            /  ?       53     47     53     63                   53
  1276.            Space      57     32     57     32     57     32     57
  1277.  
  1278.  
  1279.       ^BScan Codes and Key Codes for Keypad and Function Keys^b
  1280.              (also see @KEYS%Top Two Keyboard Rows[Top Two Rows] and @KEYS%Bottom Two Keyboard Rows[Bottom Two Rows])
  1281.  
  1282.                                     Shift  Shift  Ctrl   Ctrl   Alt
  1283.            Key Cap    Scan   ASCII  Scan   ASCII  Scan   ASCII  Scan
  1284.            Symbol     Code   Code   Code   Code   Code   Code   Code
  1285.            -------    -----  -----  -----  -----  -----  -----  -----
  1286.            F1         59     0      84     0      94     0      104
  1287.            F2         60     0      85     0      95     0      105
  1288.            F3         61     0      86     0      96     0      106
  1289.            F4         62     0      87     0      97     0      107
  1290.            F5         63     0      88     0      98     0      108
  1291.            F6         64     0      89     0      99     0      109
  1292.            F7         65     0      90     0      100    0      110
  1293.            F8         66     0      91     0      101    0      111
  1294.            F9         67     0      92     0      102    0      112
  1295.            F10        68     0      93     0      103    0      113
  1296.            F11        133    0      135    0      137    0      139
  1297.            F12        134    0      136    0      138    0      140
  1298.            np *       55     42     55     42     150    0      55
  1299.            np Home    71     0      71     55     119    0
  1300.            cp Home    71     224    71     224    119    224    151
  1301.            np Up      72     0      72     56     141    0
  1302.            cp Up      72     224    72     224    141    224    152
  1303.            np PgUp    73     0      73     57     132    0
  1304.            cp PgUp    73     224    73     224    132    224    153
  1305.            np Minus   74     45     74     45     142    0      74
  1306.            np Left    75     0      75     52     115    0
  1307.            cp Left    75     224    75     224    115    224    155
  1308.            np 5       76     0      76     53     143    0
  1309.            np Right   77     0      77     54     116    0
  1310.            cp Right   77     224    77     224    116    224    157
  1311.            np Plus    78     43     78     43     144    0      78
  1312.            np End     79     0      79     49     117    0
  1313.            cp End     79     224    79     224    117    224    159
  1314.            np Down    80     0      80     50     145    0
  1315.            cp Down    80     224    80     224    145    224    160
  1316.            np PgDn    81     0      81     51     118    0
  1317.            cp PgDn    81     224    81     224    118    224    161
  1318.            np Ins     82     0      82     48     146    0
  1319.            cp Ins     82     224    82     224    146    224    162
  1320.            np Del     83     0      83     46     147    0
  1321.            cp Del     83     224    83     224    147    224    163
  1322.            np /       224    47     224    47     149    0      164
  1323.            np Enter   224    13     224    13     224    10     166
  1324.  
  1325.  
  1326. COMMANDS Commands & Keywords (1 of 2)
  1327.  
  1328. ^1Note:^0  Commands shown as "^BExternal MS-DOS^b" may not be implemented in all
  1329.        DOS versions, and/or may have a different syntax on your system.
  1330.        Under MS-DOS 5+, external commands usually support an ^2/H^0 switch
  1331.        to display that command's syntax.
  1332.  
  1333.                             ^B Commands Index ^b
  1334.  
  1335. ^1(more^0@COMMANDS2[  ]^1)^0
  1336.  
  1337.     @?[!?]              @ALIAS[!ALIAS]          @APPEND[APPEND]         @ASSIGN[ASSIGN]         @ATTRIB[ATTRIB]
  1338.     @BACKUP[!BACKUP]         @BEEP[BEEP]           @BREAK[BREAK]          @CALL[!CALL]           @CANCEL[CANCEL]
  1339.     @CD[CD]             @CDD[CDD]            @CHCP[CHCP]           @CD%CHDIR[CHDIR]          @CHKDSK[CHKDSK]
  1340.     @CLS[CLS]            @COLOR[COLOR]          @COMP[COMP]           @COPY[COPY]           @CTTY[CTTY]
  1341.     @DATE[!DATE]           @DEL[DEL]            @DELAY[DELAY]          @DESCRIBE[DESCRIBE]       @DIR[DIR]
  1342.     @DIRS[DIRS]           @DISKCOMP[DISKCOMP]       @DISKCOPY[DISKCOPY]       @FOR%DO[DO]             @DRAWBOX[DRAWBOX]
  1343.     @DRAWHLINE[!DRAWHLINE]      @DRAWVLINE[DRAWVLINE]      @ECHO[!ECHO]           @ECHOS[ECHOS]          @EDIT[EDIT]
  1344.     @IFF%ELSE[ELSE]           @IFF%ELSE[ELSEIFF]        @IFF%ENDIFF[ENDIFF]         @ENDLOCAL[ENDLOCAL]       @DEL%ERASE[ERASE]
  1345.     @ESET[ESET]           @EXCEPT[EXCEPT]         @EXIT[EXIT]           @FASTOPEN[!FASTOPEN]       @FC[FC]
  1346.     @FIND[FIND]           @FOR[FOR]            @FORMAT[FORMAT]         @FREE[FREE]           @GLOBAL[!GLOBAL]
  1347.     @GOSUB[GOSUB]          @GOTO[GOTO]           @GRAFTABL[GRAFTABL]       @GRAPHICS[GRAPHICS]       @HISTORY[!HISTORY]
  1348.     @IF[!IF]             @IFF[IFF]            @FOR%IN[IN]             @INKEY[INKEY]          @INPUT[INPUT]
  1349.     @JOIN[!JOIN]
  1350.  
  1351. ^1(more^0@COMMANDS2[  ]^1)^0
  1352. COMMANDS2 Commands & Keywords (2 of 2)
  1353.  
  1354.                         ^B Commands Index (continued)^b
  1355.  
  1356. ^1(more^0@COMMANDS[  ]^1)^0
  1357.  
  1358.     @KEYB[!KEYB]           @KEYSTACK[KEYSTACK]       @LABEL[!LABEL]          @LH[LH]             @LIST[LIST]
  1359.     @LOADBTM[LOADBTM]        @LH%LOADHIGH[LOADHIGH]       @LOG[LOG]            @MD[!MD]             @MEM[MEM]
  1360.     @MEMORY[MEMORY]         @MIRROR[MIRROR]         @MD%MKDIR[MKDIR]          @MODE[MODE]           @MORE[MORE]
  1361.     @MOVE[MOVE]           @NLSFNC[!NLSFUNC]        @PATH[!PATH]           @PAUSE[PAUSE]          @POPD[POPD]
  1362.     @PRINT[PRINT]          @PROMPT[PROMPT]         @PUSHD[PUSHD]          @QUIT[!QUIT]           @RD[!RD]
  1363.     @REBOOT[REBOOT]         @RECOVER[RECOVER]        @REM[REM]            @REN[REN]            @REN^RENAME[RENAME]
  1364.     @REPLACE[REPLACE]        @RESTORE[RESTORE]        @RETURN[RETURN]         @RD%RMDIR[RMDIR]          @SCREEN[!SCREEN]
  1365.     @SCRPUT[SCRPUT]         @SELECT[SELECT]         @SET[SET]            @SETDOS[SETDOS]         @SETLOCAL[SETLOCAL]
  1366.     @SETVER[SETVER]         @SHARE[SHARE]          @SHIFT[SHIFT]          @SORT[SORT]           @SUBST[SUBST]
  1367.     @SWAPPING[SWAPPING]       @SYS[SYS]            @TEE[!TEE]            @TEXT[TEXT/ENDTEXT]   @IFF%THEN[THEN]
  1368.     @TIME[TIME]           @TIMER[TIMER]          @TREE[TREE]           @TRUENAME[TRUENAME]       @TYPE[TYPE]
  1369.     @UNALIAS[!UNALIAS]        @UNDELETE[UNDELETE]       @UNFORMAT[UNFORMAT]       @UNSET[UNSET]          @VER[!VER]
  1370.     @VERIFY[VERIFY]         @VOL[VOL]            @VSCRPUT[VSCRPUT]        @XCOPY[!XCOPY]          @Y[!Y]
  1371.  
  1372. ^1(more^0@COMMANDS[  ]^1)^0
  1373. CHDIR CHDIR  (Internal 4DOS)
  1374.  
  1375.      (see the @CD%CHDIR[CD] command).
  1376.  
  1377. DO DO  (4DOS Keyword)
  1378.  
  1379.      (see the @FOR^DO[FOR] command).
  1380.  
  1381. ERASE ERASE  (Internal 4DOS)
  1382.  
  1383.      (see the @DEL%ERASE[DEL] command).
  1384.  
  1385. ELSE  ELSE  (4DOS Keyword)
  1386.  
  1387.      (see the @IFF%ELSE[IFF] command).
  1388.  
  1389. ELSEIFF ELSEIFF  (4DOS Keyword)
  1390.  
  1391.      (see the @IFF^ELSE[IFF] command).
  1392.  
  1393. ENDIFF ENDIFF  (4DOS Keyword)
  1394.  
  1395.      (see the @IFF%ENDIFF[IFF] command).
  1396.  
  1397. ENDTEXT  ENDTEXT  (4DOS Keyword)
  1398.  
  1399.      (see the @TEXT%ENDTEX[TEXT] command).
  1400.  
  1401. IN IN  (4DOS Keyword)
  1402.  
  1403.      (see the @FOR%IN[FOR] command).
  1404.  
  1405. LOADHIGH LOADHIGH (Internal 4DOS)
  1406.  
  1407.      (see the @LH%LOADHIGH[LH] command).
  1408.  
  1409. MKDIR MKDIR  (Internal 4DOS)
  1410.  
  1411.      (see the @MD%MKDIR[MD] command).
  1412.  
  1413. RENAME RENAME  (Internal 4DOS)
  1414.  
  1415.      (see the @REN%RENAME[REN] command).
  1416.  
  1417. RMDIR RMDIR  (Internal 4DOS)
  1418.  
  1419.      (see the @RD%RMDIR[RD] command).
  1420.  
  1421. THEN THEN  (4DOS Keyword)
  1422.  
  1423.      (see the @IFF%THEN[IFF] command).
  1424.  
  1425. ? ?  (Internal 4DOS)
  1426.  
  1427. ^1SYNTAX^0
  1428.  
  1429.     ^B?^b
  1430.  
  1431. ^1PURPOSE^0
  1432.  
  1433. Display a list of the 4DOS internal @COMMANDS[commands].
  1434.  
  1435. Note that if you have disabled a command with @SETDOS%/I[SETDOS /I-], it will
  1436. not appear in the list.
  1437.  
  1438. (do not confuse with the @÷?[%? variable]).
  1439.  
  1440. ALIAS ALIAS  (Internal 4DOS)
  1441.  
  1442. ^1SYNTAX^0
  1443.  
  1444.     ^BALIAS [/P] [/R [d:][path]filename...] [name[=][value]]^b
  1445.  
  1446. ^1PURPOSE^0
  1447.  
  1448. Load or display the alias list, or define name as a substitute for value.
  1449.  
  1450. ^1COMMENTS^0
  1451.  
  1452. Aliases are useful as a means of executing a complex series of commands
  1453. with a few keystrokes.  Aliases can also be used as very fast in-memory batch
  1454. files, and will run much faster than disk-based batch files.
  1455.  
  1456. 4DOS supports two types of aliases; normal aliases (where 4DOS
  1457. substitutes the alias definition for the first argument on the command
  1458. line), and "keystroke aliases", where the command line editor will
  1459. immediately substitute the alias when the key is pressed.
  1460.  
  1461. Keystroke alias names are composed of an ^B@@^b followed by the key name.  You
  1462. can add a carriage return to a key alias by ending the alias with a
  1463. ^Br^b (^B^^X^^Xr^b) if defined at the command line or in a batch file, or ^Br^b
  1464. (^B^^Xr^b) if defined in an ALIAS /R file.  The valid key names are the same
  1465. as those listed in the section on Key Mapping in the 4DOS manal.
  1466. (see @KEYS%Key Names[Key Names]).
  1467.  
  1468. If you only specify "name", ALIAS displays the current alias value for
  1469. "name".  Otherwise, ALIAS assigns the command(s) in "value" to "name".
  1470. "Name" can now be used as if it were a built-in or external command.  If
  1471. you don't specify any arguments, ALIAS displays the current alias list.
  1472.  
  1473.  
  1474. "Name" is limited to no more than 80 characters, and "value" to no more
  1475. than 255 characters.
  1476.  
  1477. The ALIAS options are:
  1478.  
  1479.     ^2/P^0  Pause after displaying each page and wait for a key to be pressed.
  1480.     ^2/R^0  Load an alias list from a file.  This is much faster than loading
  1481.         aliases from a batch file.  The file is in the same format as the
  1482.         ALIAS display, so ALIAS /R can accept as input a file generated by
  1483.         redirecting ALIAS output.  You can add comments to an alias file by
  1484.         starting the comment line with a colon (^B:^b).
  1485.  
  1486.         For example, the following commands will save the aliases to a file,
  1487.         and then reload    them from that file:
  1488.  
  1489.             alias > alist
  1490.             alias /r alist
  1491.  
  1492.         (You can load aliases from multiple files by listing all the
  1493.         filenames after the /R.)
  1494.  
  1495. When defining aliases at the command line, back quotes must be used around
  1496. the alias arguments that contain multiple commands or variable references
  1497. (%2, %&2, etc.) to prevent premature expansion.  Back quotes should NOT be
  1498. used when defining aliases in a file to be read with ALIAS /R.
  1499.  
  1500. Aliases may be nested; i.e., an alias can refer to another alias, but they
  1501. cannot refer back to themselves (a=b=a).  You can stop alias expansion by
  1502. prefacing the alias with an asterisk (^B*^b).  This also allows an alias to
  1503. refer to a command of the same name (see below for an example).
  1504.  
  1505. Alias names can be truncated by including an asterisk (^B*^b) in the name.
  1506.  
  1507. To edit an alias, use @ESET[ESET]; to remove an alias, use @UNALIAS[UNALIAS].
  1508.  
  1509. The total alias space available is defined by the optional "@Alias[Alias=]" INI directive.
  1510.  
  1511. For more information on aliases (including the use of variables), see the
  1512. Aliases section in the 4DOS manual, and the sample file ALIASES distributed
  1513. with 4DOS.
  1514.  
  1515. ^1EXAMPLES^0
  1516.  
  1517. Define D as an alias for DIR /AP:
  1518.  
  1519.     c:\> alias d dir /ap
  1520.  
  1521. Rename the LIST command to DISPLAY, and alias LIST to an external program:
  1522.  
  1523.     c:\> alias display *list
  1524.     c:\> alias list c:\util\list.com
  1525.  
  1526. The following examples show the use of alias arguments:
  1527.  
  1528.     c:\> alias zap `erase %& ^^ chkdsk ^^ dir /w`
  1529.     c:\> alias reverse `echo %5 %4 %3 %2 %1`
  1530.  
  1531. The following keystroke alias will insert a "dir /2 /v /p " on the command
  1532. line when the Alt-F1 key is pressed:
  1533.  
  1534.     c:\> alias @@Alt-F1 `dir /2 /v /p `
  1535.  
  1536. The same alias set up to execute immediately when Alt-F1 is pressed:
  1537.  
  1538.     c:\> alias @@Alt-F1 `dir /2 /v /pr`
  1539.  
  1540. APPEND  APPEND  (Internal/External MS-DOS)
  1541.  
  1542. ^1SYNTAX^0
  1543.  
  1544.     ^BAPPEND [/X[:on|:off]] [/E] [[d:]path][[;d:]path]...^b
  1545.  
  1546. ^1PURPOSE^0
  1547.  
  1548. Forces MS-DOS to search the specified directories when looking for files.
  1549.  
  1550. ^1COMMENTS^0
  1551.  
  1552. ^B^KThis is a dangerous command^k^b and could cause you to update, overwrite or
  1553. delete files in the wrong directory.  We recommend against using it unless
  1554. absolutely necessary.  If you must use APPEND, we recommend that you set
  1555. the APPEND path to an empty string except when the applications that need
  1556. APPEND are actually running.
  1557.  
  1558. Use of APPEND should be unnecessary except for older applications or those
  1559. which do not provide adequate mechanisms for you to specify where the
  1560. application's files are stored.
  1561.  
  1562. Before using APPEND with 4DOS, read the section on APPEND in the COMPAT.DOC
  1563. file (included with all copies of 4DOS).
  1564.  
  1565. The APPEND options are:
  1566.  
  1567.     ^2/X^0  Expand the use of the APPEND path to include wildcard searches,
  1568.         not just searches for specific filenames.
  1569.     ^2/E^0  Store the APPEND path in the environment.  This option is not
  1570.         compatible with 4DOS.
  1571.  
  1572. APPEND is memory-resident, and uses about 5K of RAM (DOS 3.3).
  1573.  
  1574. ASSIGN ASSIGN  (External MS-DOS)
  1575.  
  1576. ^1SYNTAX^0
  1577.  
  1578.     ^BASSIGN [/status] [x=y [...]]^b
  1579.  
  1580. ^1PURPOSE^0
  1581.  
  1582. Routes disk I/O requests to a different drive.
  1583.  
  1584. ^1COMMENTS^0
  1585.  
  1586. ASSIGN allows you to use programs that use a preassigned disk drive (such
  1587. as A or B) with another drive (such as C).  The first argument specifies
  1588. the drive whose assignment you want to change, and the second argument is
  1589. the new assignment.  The equal sign (^B=^b) is optional.  Do not use a colon
  1590. after the drive letters.
  1591.  
  1592. The ^2/status^0 switch (DOS 5+ only) displays the current assignments.
  1593.  
  1594. ASSIGN with no operands clears all assignments.
  1595.  
  1596. Reassignment of drives should only be done when necessary.  It should never
  1597. be used with @BACKUP[BACKUP], @LABEL[LABEL], @PRINT[PRINT] or @RESTORE[RESTORE], and @ASSIGN[ASSIGN] should not be used
  1598. with drives that have been @JOIN[JOIN]ed or @SUBST[SUBST]ituted.  @DISKCOMP[DISKCOMP], @DOSKCOPY[DISKCOPY] and
  1599. @FORMAT[FORMAT] ignore drive reassignments.
  1600.  
  1601. ASSIGN is memory-resident, and uses about 1.5K of RAM (DOS 3.3).
  1602.  
  1603.  
  1604. ^1EXAMPLES^0
  1605.  
  1606. Route all requests for drive A to drive C:
  1607.  
  1608.     c:\> assign A=C
  1609.  
  1610. Clear current assignments.
  1611.  
  1612.     c:\> assign
  1613.  
  1614. ATTRIB ATTRIB  (Internal 4DOS)
  1615.  
  1616. ^1SYNTAX^0
  1617.  
  1618.     ^BATTRIB [/D /Q /S -|+[AHRS]] [d:][path]filename...^b
  1619.  
  1620. ^1PURPOSE^0
  1621.  
  1622. Change the file or subdirectory attributes.
  1623.  
  1624. ^1COMMENTS^0
  1625.  
  1626. The ATTRIB options are:
  1627.  
  1628.     ^2/D^0  Also modify subdirectory attributes
  1629.     ^2/Q^0  Quiet mode - don't display filenames
  1630.     ^2/S^0  Modify files in the current directory and its subdirectories
  1631.     ^2+A^0  Set the archive attribute
  1632.     ^2-A^0  Clear the archive attribute
  1633.     ^2+H^0  Set the hidden attribute
  1634.     ^2-H^0  Clear the hidden attribute
  1635.     ^2+R^0  Set the read-only attribute
  1636.     ^2-R^0  Clear the read-only attribute
  1637.     ^2+S^0  Set the system file attribute
  1638.     ^2-S^0  Clear the system file attribute
  1639.  
  1640. If you don't specify the ^B/D^b option, ATTRIB only modifies file attributes.
  1641.  
  1642. 4DOS will preserve the previous file attributes and change only the
  1643. specified attributes.  New attribute values are allowed between filenames;
  1644. otherwise ATTRIB uses the same attributes specified for the previous
  1645. file(s).  You cannot modify the directory or volume label attributes.
  1646.  
  1647. You can display the file attributes using the ^B/T^b option in @DIR[DIR].
  1648.  
  1649. ^1EXAMPLES^0
  1650.  
  1651. Set the read-only and hidden attributes for the file MEMO:
  1652.  
  1653.     c:\> attrib +rh memo
  1654.  
  1655. Set the archive attribute (file has been modified) for MEMO and change
  1656. TEXT.COM to system and not modified:
  1657.  
  1658.     c:\> attrib +a memo +s -a test.com
  1659.  
  1660. (see the @αATTRIB[ATTRIB function]).
  1661.  
  1662. BACKUP BACKUP  (External MS-DOS)
  1663.  
  1664. ^1SYNTAX^0
  1665.  
  1666. ^BBACKUP [d:][path][filename][.ext] d: [/A /D:date /F[:size] /L /M /S /T:time]^b
  1667.  
  1668. ^1PURPOSE^0
  1669.  
  1670. Backs up files from one disk to another.
  1671.  
  1672. ^1COMMENTS^0
  1673.  
  1674. The first argument is the source, the second argument is the destination.
  1675. You can use wildcard characters in the source filename.
  1676.  
  1677. The BACKUP options are:
  1678.  
  1679.     ^2/A^0  Add files to be backed up to the files already on the backup disk.
  1680.     ^2/D:date^0  Back up files modified on or after the specified date
  1681.         (the date format depends on the current country setting).
  1682.     ^2/F^0  Format the target disk if it is not already formatted.  @FORMAT[FORMAT.COM]
  1683.         must be in the current directory or a directory in @÷PATH[%PATH].
  1684.     ^2/L^0  Keep a log of the backup.  If a filename is not specified, BACKUP
  1685.         keeps a log on BACKUP.LOG in the root directory of the source drive.
  1686.         If the log file exists, the information is appended to that log.
  1687.     ^2/M^0  Back up only those files that have been modified since the last
  1688.         backup (those with the archive bit set).
  1689.     ^2/S^0  Back up subdirectory files in addition to the specified directory.
  1690.     ^2/T:time^0  Back up all files modified on or after the specified time
  1691.         on the specified date (^2/D^0) (time is in the format hh:mm:ss).  If no
  1692.         date is specified, this parameter selects files modified on or after
  1693.         the specified time on all days.
  1694.  
  1695. BACKUP may not work correctly if used on a drive that has been @ASSIGN[ASSIGN]ed or
  1696. @SUBST[SUBST]ituted, or when a @JOIN[JOIN] or @APPEND[APPEND] is in effect.
  1697.  
  1698. When using the ^2/F^0 parameter, the target diskette and the target drive
  1699. capacity must be identical; for example do not use a 360KB diskette in a
  1700. 1.2MB drive.
  1701.  
  1702. (See also @COPY[COPY], @REPLACE[REPLACE], @RESTORE[RESTORE] and @XCOPY[XCOPY]).
  1703.  
  1704. ^1EXAMPLE^0
  1705.  
  1706. Backup the fixed disk C to multiple floppies on A:
  1707.  
  1708.     c:\> backup c: a: /s
  1709.  
  1710. Backup all the files with a .DOC extension in the C:\WS directory to A:
  1711.  
  1712.     c:\> backup c:\ws\*.doc a:
  1713.  
  1714. BEEP BEEP  (Internal 4DOS)
  1715.  
  1716. ^1SYNTAX^0
  1717.  
  1718.     ^BBEEP [frequency duration ...]^b
  1719.  
  1720. ^1PURPOSE^0
  1721.  
  1722. Beep the speaker.
  1723.  
  1724. ^1COMMENTS^0
  1725.  
  1726. BEEP is normally used in batch files to signal that an operation has been
  1727. completed, or that the computer needs attention (for example, to change
  1728. disks).  Because BEEP allows you to specify the frequency and duration, you
  1729. can use it to play simple music.  You can specify multiple frequency and
  1730. duration pairs on the command line.
  1731.  
  1732. The frequency is specified in Hertz, and the duration in 1/18th second
  1733. intervals.  No sound will be generated for frequencies less than 20 Hz,
  1734. allowing you to insert short delays.  The default value for frequency is
  1735. ^B440 Hz^b; the default value for duration is ^B2^b.
  1736.  
  1737. See the "@BeepFreq[BeepFreq=]" and "@BeepLength[BeepLength=]" INI directives for
  1738. information on how to change or disable the default values
  1739.  
  1740. The following table gives the frequency values for a five-octave range
  1741. (middle C is 523 Hz):
  1742.  
  1743.          ╔════════╦═══════╤═══════╤═══════╤════════╤═══════╗
  1744.          ║ C      ║  131  │  262  │  523  │  1046  │  2093 ║
  1745.          ║ C#/Db  ║  139  │  277  │  554  │  1108  │  2217 ║
  1746.          ║ D      ║  147  │  294  │  587  │  1175  │  2349 ║
  1747.          ║ D#/Eb  ║  156  │  311  │  622  │  1244  │  2489 ║
  1748.          ║ E      ║  165  │  330  │  659  │  1318  │  2637 ║
  1749.          ║ F      ║  175  │  349  │  698  │  1397  │  2794 ║
  1750.          ║ F#/Gb  ║  185  │  370  │  740  │  1480  │  2960 ║
  1751.          ║ G      ║  196  │  392  │  784  │  1568  │  3136 ║
  1752.          ║ G#/Ab  ║  208  │  415  │  831  │  1662  │  3322 ║
  1753.          ║ A      ║  220  │  440  │  880  │  1760  │  3520 ║
  1754.          ║ A#/Bb  ║  233  │  466  │  932  │  1866  │  3729 ║
  1755.          ║ B      ║  248  │  494  │  988  │  1973  │  3951 ║
  1756.          ╚════════╩═══════╧═══════╧═══════╧════════╧═══════╝
  1757.  
  1758. ^1EXAMPLE^0
  1759.  
  1760. The following batch file fragment runs the program DEMO, plays a few notes,
  1761. and waits for you to press a key:
  1762.  
  1763.     demo
  1764.     beep 440 4 587 2 1040 6
  1765.     pause Finished with the demo - press a key to continue
  1766.  
  1767. Approximation of a popular tune:
  1768.  
  1769.     beep 523 5 523 5 587 9 523 9 698 9 659 18
  1770.     beep 523 5 523 5 587 9 523 9 784 9 698 18
  1771.  
  1772.  
  1773. BREAK BREAK  (Internal 4DOS)
  1774.  
  1775. ^1SYNTAX^0
  1776.  
  1777.     ^BBREAK [on | off]^b
  1778.  
  1779. ^1PURPOSE^0
  1780.  
  1781. Display, enable, or disable Ctrl-C / Ctrl-BREAK checking.
  1782.  
  1783. ^1COMMENTS^0
  1784.  
  1785. BREAK turns the ^C / ^BREAK checking on or off.  If no argument is given,
  1786. it displays the current BREAK status.
  1787.  
  1788. If BREAK is off, MS-DOS will only check for a ^C during MS-DOS character I/O
  1789. (screen, keyboard, serial port, or printer operations).  Many programs
  1790. don't use the MS-DOS functions to access the screen and keyboard, and it
  1791. can be difficult to break out of them with BREAK off.  If BREAK is on,
  1792. MS-DOS will check for a ^C or ^BREAK during any MS-DOS operation (including
  1793. disk I/O).  This will slow your system slightly.
  1794.  
  1795. BREAK defaults to OFF.  You can change the default BREAK setting by adding
  1796. the following line to your CONFIG.SYS file:
  1797.  
  1798.     BREAK=ON
  1799.  
  1800. ^1EXAMPLE^0
  1801.  
  1802. Check the current BREAK status:
  1803.  
  1804.     c:\> break
  1805.     BREAK is OFF
  1806.  
  1807. Enable ^C checking in all MS-DOS calls:
  1808.  
  1809.     c:\> break on
  1810.  
  1811. CALL CALL  (Internal 4DOS)
  1812.  
  1813. ^1SYNTAX^0
  1814.  
  1815.     ^BCALL [d:][path]filename^b
  1816.  
  1817. ^1PURPOSE^0
  1818.  
  1819.  
  1820. Call a secondary batch file.
  1821.  
  1822.  
  1823. ^1COMMENTS^0
  1824.  
  1825. CALL allows batch files to call other batch files (batch file nesting)
  1826. without invoking a secondary copy of the command processor.  4DOS supports
  1827. batch file nesting up to 10 levels deep.  The calling batch file is
  1828. suspended while the called batch file runs.  When the called batch file
  1829. finishes, the calling batch file resumes execution at the next command.
  1830. If you execute a batch file from another batch file without using CALL,
  1831. the first batch file is terminated before the second one starts.
  1832.  
  1833. The current ECHO state will be inherited by a called batch file.
  1834.  
  1835. See also @CANCEL[CANCEL] and @QUIT[QUIT].
  1836.  
  1837. ^1EXAMPLE^0
  1838.  
  1839. The following batch file fragment compares an input line to "ws" and calls
  1840. a secondary batch file if it matches:
  1841.  
  1842.     input Enter your choice:  %%option
  1843.     if "%option" == "ws" call ws.bat
  1844.  
  1845. CANCEL CANCEL  (Internal 4DOS)
  1846.  
  1847. ^1SYNTAX^0        (Internal 4DOS)
  1848.  
  1849.     ^BCANCEL [value]^b
  1850.  
  1851. ^1PURPOSE^0
  1852.  
  1853. Terminate batch processing.
  1854.  
  1855. ^1COMMENTS^0
  1856.  
  1857. The CANCEL command will end all batch file processing, regardless of the
  1858. batch nesting level.  (Use @QUIT[QUIT] to end a nested batch file and return to
  1859. the previous batch file.)  If you enter a value, CANCEL will set the
  1860. @IF%ERRORLEVEL[ERRORLEVEL] to that value.
  1861.  
  1862. You can CANCEL at any point in a batch file.
  1863.  
  1864. See also @CALL[CALL] and @QUIT[QUIT].
  1865.  
  1866. ^1EXAMPLE^0
  1867.  
  1868. The following batch file fragment compares an input line to "end" and
  1869. terminates all batch file processing if it matches:
  1870.  
  1871.     input Enter your choice:  %%option
  1872.     if "%option" == "end" cancel
  1873.  
  1874. CD CD  (Internal 4DOS)
  1875.  
  1876. ^1SYNTAX^0
  1877.  
  1878.     ^BCD [[d:][pathname]^b   or  ^BCHDIR [[d:][pathname]^b
  1879.  
  1880. ^1PURPOSE^0
  1881.  
  1882. Display or change the current directory.
  1883.  
  1884. ^1COMMENTS^0
  1885.  
  1886. Entering CD with no argument or only a drive name will display the current
  1887. directory.  Entering CD and a pathname will change the current directory.
  1888.  
  1889. If CD can't change to the specified directory, it will look for the
  1890. CDPATH environment variable.  CD will append the specified directory
  1891. name to each directory in @CDPATH[%CDPATH] and attempt to change to that
  1892. directory, until the first match or the end of the CDPATH argument.
  1893.  
  1894. The previous directory is saved on each CD, and you can switch back to it
  1895. with "^BCD -^b".  You can switch between two directories by repeatedly entering
  1896. "^BCD -^b".  Note that the saved directory is the same for both CD and @CDD[CDD].
  1897.  
  1898. You can change to the parent directory with "^BCD ..^b".  You can also go up
  1899. one additional directory level with each additional "^B.^b".  For example,
  1900. "^BCD ....^b" will go up three directory levels.
  1901.  
  1902. Every disk drive on the system has its own current directory.  Specifying
  1903. both a drive and a directory in the CD command will change the current
  1904. directory on the specified drive, but will not change the default drive.
  1905. Use @CDD[CDD] to change both the drive and directory.
  1906.  
  1907. See also @VARIABLES%Variables Index[VARIABLES], @CDD[CDD] and @PUSHD[PUSHD].
  1908.  
  1909. ^1EXAMPLES^0
  1910.  
  1911. Change to the subdirectory C:\FINANCE\MYFILES:
  1912.  
  1913.     c:\> cd \finance\myfiles
  1914.  
  1915. Change the default directory on drive A:
  1916.  
  1917.     c:\> cd a:\utility
  1918.  
  1919. Set the CDPATH environment variable and then CD to a directory called DOCS
  1920. (CD will first attempt to change to DOCS in the current directory, then
  1921. C:\DOCS, then C:\DOS\DOCS, etc.):
  1922.  
  1923.     c:\> set cdpath=c:\;c:\dos;c:\util;c:\ws
  1924.     c:\> cd docs
  1925.  
  1926. CDD CDD  (Internal 4DOS)
  1927.  
  1928. ^1SYNTAX^0
  1929.  
  1930.     ^BCDD [d:]pathname^b
  1931.  
  1932. ^1PURPOSE^0
  1933.  
  1934. Change the current disk drive and directory.
  1935.  
  1936. ^1COMMENTS^0
  1937.  
  1938. CDD is similar to @CD[CD], except it can also change the default disk drive.
  1939.  
  1940. To start at the root directory, start the pathname with a backslash (^B\^b).
  1941. To start at the parent directory, start the pathname with two periods (^B..^b).
  1942. All other pathnames start at the current directory.
  1943.  
  1944. If CDD can't change to the specified directory, it will look for the
  1945. @CDPATH[%CDPATH] environment variable.  CDD will append the specified directory
  1946. name to each directory in CDPATH and attempt to change to that directory,
  1947. until the first match or the end of the CDPATH argument.
  1948.  
  1949. The previous directory is saved on each CDD, and you can switch back to it
  1950. with "^BCDD -^b".  You can switch between two directories by repeatedly entering
  1951. "^BCDD -^b".  Note that the saved directory is the same for both CDD and CD.
  1952.  
  1953. You can change to the parent directory with "^BCDD ..^b".  You can also go up
  1954. one additional directory level with each additional "^B.^b".  For example,
  1955. "^BCDD ....^b" will go up three directory levels.
  1956.  
  1957. MS-DOS will not accept a directory name longer than 64 characters.
  1958.  
  1959. See also @VARIABLES%Variables Index[VARIABLES], @CD[CD] and @PUSHD[PUSHD].
  1960.  
  1961. ^1EXAMPLE^0
  1962.  
  1963. Change from the root directory on drive A to the subdirectory C:\WS:
  1964.  
  1965.     a:\> cdd c:\ws
  1966.  
  1967. Set the CDPATH environment variable and then CDD to a directory called DOCS
  1968. (CDD will first attempt to change to DOCS in the current directory, then
  1969. C:\DOCS, then C:\DOS\DOCS, etc.):
  1970.  
  1971.     c:\> set cdpath=c:\;c:\dos;c:\util;c:\ws
  1972.     c:\> cd docs
  1973.  
  1974. CHCP CHCP  (Internal 4DOS)
  1975.  
  1976. ^1SYNTAX^0
  1977.  
  1978.     ^BCHCP [n]^b
  1979.  
  1980. ^1PURPOSE^0
  1981.  
  1982. Display or change the current system code page.
  1983.  
  1984. ^1COMMENTS^0
  1985.  
  1986. Code page switching allows you to select different character sets for
  1987. language support.  To use code page switching, you must have an EGA or VGA
  1988. board and/or an appropriate printer, and MS-DOS 3.3 or above.
  1989.  
  1990. Before using CHCP, you must load the device drivers (in CONFIG.SYS); make
  1991. sure the information file (COUNTRY.SYS) is available; load national
  1992. language support (using the @NLSFUNC[NLSFUNC] command); and prepare the specified
  1993. code page for the devices (using the @MODE[MODE] command with the ^BCODEPAGE PREPARE^b
  1994. option).
  1995.  
  1996. CHCP accepts one of the two prepared system code pages.  An error message
  1997. is displayed if a code page is selected that has not been prepared.
  1998.  
  1999. Entering CHCP with no argument displays the active code page.
  2000.  
  2001. The code pages supported by MS-DOS are:
  2002.  
  2003.     ^2437^0     United States
  2004.     ^2850^0     Multilingual (Latin I)
  2005.     ^2852^0     Slavic (Latin II)
  2006.     ^2860^0     Portuguese
  2007.     ^2863^0     Canadian-French
  2008.     ^2865^0     Nordic
  2009.  
  2010. See your MS-DOS manual for more information on CHCP and code page switching.
  2011.  
  2012. See also @MODE%CODEPAGE[MODE] and @NLSFUNC[NLSFUNC].
  2013.  
  2014. ^1EXAMPLES^0
  2015.  
  2016. Display the current code page:
  2017.  
  2018.     c:\> chcp
  2019.     Active code page: 437
  2020.  
  2021. Set the code page to multilingual:
  2022.  
  2023.     c:\> chcp 850
  2024.  
  2025. CHKDSK CHKDSK  (External MS-DOS)
  2026.  
  2027. ^1SYNTAX^0
  2028.  
  2029.     ^BCHKDSK [d:][filename[.ext]] [/F /V]^b
  2030.  
  2031. ^1PURPOSE^0
  2032.  
  2033. Checks the disk directories, files, and FAT, and reports on the disk and
  2034. memory status.
  2035.  
  2036. ^1COMMENTS^0
  2037.  
  2038. If you specify a filename, CHKDSK will check the disk for fragmentation
  2039. and display a status report for the file.  You can use wildcard characters
  2040. in the filename.
  2041.  
  2042. The CHKDSK options are:
  2043.  
  2044.     ^2/F^0  Try to fix errors in the directory or FAT.
  2045.     ^2/V^0  Displays all files and their paths on the specified drive.
  2046.  
  2047. If the ^B/F^b option is specified, CHKDSK will attempt to correct any errors it
  2048. finds.  If ^B/F^b is not specified, CHKDSK will analyze the disk for errors but
  2049. will not attempt to correct them.
  2050.  
  2051. See your MS-DOS manual for more information on CHKDSK.
  2052.  
  2053. See also @FREE[FREE] and @MEMORY[MEMORY].
  2054.  
  2055. ^1EXAMPLE^0
  2056.  
  2057. Check drive C and correct any errors:
  2058.  
  2059.     c:\> chkdsk c: /f
  2060.  
  2061. CLS CLS  (Internal 4DOS)
  2062.  
  2063. ^1SYNTAX^0
  2064.  
  2065.     ^BCLS [[bright] [blink] fg ON bg [BORDER fg]]^b
  2066.  
  2067. ^1PURPOSE^0
  2068.  
  2069.  
  2070. Clear the video display, optionally to the specified colors.
  2071.  
  2072.  
  2073. ^1COMMENTS^0
  2074.  
  2075. CLS clears the display and moves the cursor to the upper left corner.
  2076.  
  2077. CLS uses the standard @COLORS[4DOS color attributes] and names.
  2078.  
  2079. If an ANSI driver is not loaded, the optional colors will not
  2080. be "sticky" - you may lose them when you run an application.
  2081.  
  2082. If 4DOS thinks you have an ANSI driver loaded, it first tries an ANSI
  2083. clear screen.  If that doesn't work, 4DOS will do a BIOS clear screen.
  2084. You can force 4DOS to recognize the ANSI state with the @SETDOS%/A[SETDOS /A] option,
  2085. or with the ANSI= option in 4DOS.INI.
  2086.  
  2087. CLS is normally used in batch files to clear the screen before displaying
  2088. text.
  2089.  
  2090. See also @COLOR[COLOR], @SETDOS[SETDOS] and @ANSI[ANSI].
  2091.  
  2092. ^1EXAMPLES^0
  2093.  
  2094. Clear the display:
  2095.  
  2096.     c:\> cls
  2097.  
  2098. Clear the display to a blue background, and set white characters as the
  2099. new default:
  2100.  
  2101.     c:\> cls white on blue
  2102.  
  2103. COLOR COLOR  (Internal 4DOS)
  2104.  
  2105. ^1SYNTAX^0
  2106.  
  2107.     ^BCOLOR [[bright] [blink] fg ON bg [BORDER fg]]^b
  2108.  
  2109. ^1PURPOSE^0
  2110.  
  2111. Set the screen display colors.
  2112.  
  2113. ^1COMMENTS^0
  2114.  
  2115. COLOR uses the standard @COLORS[4DOS color attributes] and names.
  2116.  
  2117. If you don't have ANSI.SYS (or another ANSI compatible screen driver)
  2118. loaded, the colors will not be "sticky" - you may lose them when you run
  2119. an application.
  2120.  
  2121. See also "@StdColors[StdColors]=", @CLS[CLS] and @ANSI[ANSI].
  2122.  
  2123. ^1EXAMPLE^0
  2124.  
  2125. Set the default screen colors to bright white text on a blue background:
  2126.  
  2127.     c:\> color bright white on blue
  2128.  
  2129. COMP COMP  (External MS-DOS)
  2130.  
  2131. ^1SYNTAX^0
  2132.  
  2133.      ^BCOMP [/A] [/C] [/D] [/L] [/N=number] [d:][path]filename1^b
  2134.                                                    ^B[d:][path]filename2^b
  2135.  
  2136. ^1PURPOSE^0
  2137.  
  2138. Compares files.
  2139.  
  2140. ^1COMMENTS^0
  2141.  
  2142. COMP compares individual files or sets of files byte for byte.  To compare
  2143. sets of files, specify only the drive, the path, or use wildcard characters
  2144. in the filenames.
  2145.  
  2146. The COMP options vary in different versions of DOS; the following are for
  2147. MS-DOS 5.0:
  2148.  
  2149.     ^2/A^0  Display differences as characters.
  2150.     ^2/C^0  Ignore case differences.
  2151.     ^2/D^0  Display differences in decimal (base 10) format; default is
  2152.         hexadecimal (base 16).
  2153.     ^2/L^0  Display the line number where a difference occurs.
  2154.     ^2/N^0  Compare only the first "number" of lines.
  2155.  
  2156. If one or both parameters are missing or if no file matches the primary
  2157. parameter, you will be prompted to enter both filenames.  If a path is
  2158. specified without a filename, COMP assumes all files in the directory (*.*).
  2159.  
  2160. If the file sizes differ, COMP does not make the comparison.
  2161.  
  2162. COMP displays an error message for any location containing mismatched
  2163. information between the two files.  COMP ends the compare after ten
  2164. mismatches.
  2165.  
  2166. See also @FC[FC] and @DISKCOMP[DISKCOMP].
  2167.  
  2168. ^1EXAMPLE^0
  2169.  
  2170. Compare the files MEMO.DOC and MEMO.BAK:
  2171.  
  2172.     c:\> comp memo.doc memo.bak
  2173.  
  2174. COPY COPY (Internal 4DOS)
  2175.  
  2176. ^1SYNTAX^0
  2177.  
  2178.     ^BCOPY [d:][path]filename[+]...[/A /B] [[d:][path]filename] [/A /B]^b
  2179.                               ^B[/C /M /N /P /Q /R /S /U /V]^b
  2180.  
  2181. ^1PURPOSE^0
  2182.  
  2183. Copy or append one or more files.
  2184.  
  2185. ^1COMMENTS^0
  2186.  
  2187. Unlike COMMAND.COM, 4DOS allows you to copy several unrelated files to a
  2188. target directory with a single COPY command.  If there are two or more
  2189. arguments on the command line, COPY assumes the last argument is the
  2190. target.  If there is only one argument, the target is assumed to be the
  2191. current directory.
  2192.  
  2193. The plus (^2+^0) tells 4DOS to append two or more files to a single target
  2194. file.  If you don't specify a target, COPY will append each subsequent
  2195. file to the first file.
  2196.  
  2197. If you specify more than one source file, and the target is NOT a
  2198. directory, COPY will automatically append the files to the target.
  2199.  
  2200. The ^B/A^b(SCII) or ^B/B^b(inary) options apply to the preceding filename and to
  2201. all subsequent filenames on the command line until another ^B/A^b or ^b/B^b is
  2202. entered.  All other options apply to all filenames on the command line.
  2203.  
  2204. The COPY options are:
  2205.  
  2206.     ^2/A^0 (^BA^bSCII)
  2207.         If used with a source filename, 4DOS will copy the file up
  2208.         to, but not including, the first ^B^Z^b character in the file.  If you
  2209.         use /A with a target filename, 4DOS will add a ^Z to the end of the
  2210.         file.  4DOS defaults to /A when appending files.
  2211.     ^2/B^0 (^BB^binary)
  2212.         If used with a source filename, 4DOS will copy the entire file.
  2213.         Using /B with a target filename prevents 4DOS from appending a ^Z to
  2214.         the target file.  4DOS defaults to /B for normal file copies.
  2215.     ^2/C^0 (^BC^bhanged)
  2216.         Copy only those files where the target exists and is older than
  2217.         the source (see ^B/U^b).
  2218.     ^2/H^0 (^BH^bidden)
  2219.         Copy hidden and system files too.
  2220.     ^2/M^0 (^BM^bodified)
  2221.         Copy only those files with the archive bit set (see @ATTRIB[ATTRIB]).  The
  2222.         archive bit will NOT be cleared after copying.
  2223.     ^2/N^0 (^BN^bothing)
  2224.         Do everything except actually perform the copy (for testing what
  2225.         the result of the COPY would be).
  2226.     ^2/P^0 (^BP^brompt)
  2227.         Confirm each file copy (^BY^b or ^BN^b).  An N response will skip that
  2228.         particular file.
  2229.     ^2/Q^0 (^BQ^buiet)
  2230.         Don't display filenames as they are copied.
  2231.     ^2/R^0 (^BR^beplace)
  2232.         Prompt before overwriting an existing file.
  2233.     ^2/S^0 (^BS^bubdirectories)
  2234.         Copy subdirectories - the target must be a directory (4DOS will
  2235.         create it if it doesn't exist).  4DOS will copy each subdirectory
  2236.         to a matching subdirectory of the target.
  2237.     ^2/U^0 (^BU^bpdate)
  2238.         Copy only those source files that are newer than a matching target
  2239.         file, or where a matching target file doesn't exist (see /C).
  2240.     ^2/V^0 (^BV^berify)
  2241.         Verify each disk write.  This is the same as executing the @VERIFY[VERIFY ON]
  2242.         command, but is only active during the COPY.
  2243.  
  2244. See also @MOVE[MOVE], @REPLACE[REPLACE], and @XCOPY[XCOPY].
  2245.  
  2246. ^1EXAMPLES^0
  2247.  
  2248. Copy the files MEMO1 and PROJECT8.WKS to the root directory on drive A:
  2249.  
  2250.     c:\> copy memo1 project8.wks a:\
  2251.  
  2252. Append the files MEMO1, MEMO2, and MEMO3 and store the result in BIGMEMO:
  2253.  
  2254.     c:\> copy memo1+memo2+memo3 bigmemo
  2255.  
  2256. Copy only those files in the root directory on drive A that are newer than
  2257. the matching files in the current directory, or which don't exist in the
  2258. current directory:
  2259.  
  2260.     c:\> copy /u a:\*.* c:\*.*
  2261.  
  2262. Copy files from the root directory on drive A to the current directory, but
  2263. prompt before overwriting existing files:
  2264.  
  2265.     c:\> copy /r a:\*.*
  2266.  
  2267. Copy a downloadable font file to the printer in binary mode:
  2268.  
  2269.     c:\> copy myfont.dat lpt1: /b
  2270.  
  2271. CTTY CTTY  (Internal 4DOS)
  2272.  
  2273. ^1SYNTAX^0
  2274.  
  2275.     ^BCTTY device^b
  2276.  
  2277. ^1PURPOSE^0
  2278.  
  2279. Change the default console device.
  2280.  
  2281. ^1COMMENTS^0
  2282.  
  2283.  At startup, 4DOS uses the keyboard as the standard input device and the
  2284. display as the standard output device.  CTTY allows you to change the
  2285. console (CON:) to another device that can perform standard character I/O.
  2286.  
  2287. CTTY works only for those programs that use the standard MS-DOS I/O
  2288. functions (this includes all of the internal 4DOS commands with the
  2289. exception of @DRAWBOX[DRAWBOX], @DRAWHLINE[DRAWHLINE], @DRAWVLINE[DRAWVLINE], @LIST[LIST], @SCREEN[SCREEN], @SCRPUT[SCRPUT], @SELECT[SELECT],
  2290. and @VSCRPUT[VSCRPUT]).
  2291.  
  2292. ^1EXAMPLE^0
  2293.  
  2294. Change the console to the first serial port:
  2295.  
  2296.     c:\> ctty com1:
  2297.  
  2298. Change the console back to the standard keyboard and display:
  2299.  
  2300.     c:\> ctty con:
  2301.  
  2302. DATE DATE  (Internal 4DOS)
  2303.  
  2304. ^1SYNTAX^0
  2305.  
  2306.     ^BDATE [mm-dd-yy]^b
  2307.  
  2308. ^1PURPOSE^0
  2309.  
  2310. Display and (optionally) change the system date.
  2311.  
  2312. ^1COMMENTS^0
  2313.  
  2314. If you don't enter any parameters, DATE will display the current system
  2315. date and time, and prompt for the new date.  Press ^BENTER^b if you don't wish
  2316. to change the date, otherwise enter the new date.
  2317.  
  2318. The format for the date entry depends on the country code defined in the
  2319. CONFIG.SYS file or by the @CHCP[CHCP] command.  The default format is U.S.
  2320. (mm-dd-yy).  The European format is dd-mm-yy; the Japanese is yy-mm-dd.
  2321.  
  2322. The parameters for the DATE command are:
  2323.  
  2324.     ^2mm^0  Month (^B1^b - ^B12^b)
  2325.     ^2dd^0  Day (^B1^b - ^B31^b)
  2326.     ^2yy^0  Year (^B80^b - ^B199^b or ^B1980^b - ^B2099^b)
  2327.  
  2328. You can use hyphens ("^B-^b"), slashes ("^B/^b"), or periods ("^B.^b") to separate the
  2329. month,
  2330. day, and year entries.
  2331.  
  2332. See also @_DATE[%_DATE], @CHCP[CHCP] and @TIME[TIME].
  2333.  
  2334. ^1EXAMPLES^0
  2335.  
  2336. Enter the date from the command line:
  2337.  
  2338.     c:\> date 12/25/89
  2339.  
  2340. To be prompted for the date:
  2341.  
  2342.     c:\> date
  2343.     Mon  Dec 25, 1989  9:30:06
  2344.     Enter new date (mm-dd-yy):
  2345.  
  2346. DEL DEL  (Internal 4DOS)
  2347.  
  2348. ^1SYNTAX^0
  2349.  
  2350.     ^BDEL [/N /P /Q /S /X /Y /Z] [d:][path]filename...^b
  2351.       or
  2352.     ^BERASE [/N /P /Q /S /X /Y /Z] [d:][path]filename...^b
  2353.  
  2354. ^1PURPOSE^0
  2355.  
  2356. Erase the specified file(s) from the disk.
  2357.  
  2358. ^1COMMENTS^0
  2359.  
  2360. The DEL options are:
  2361.  
  2362.     ^2/N^0  Do everything except actually delete the file(s) (for testing
  2363.         what the result of a DEL would be).
  2364.     ^2/P^0  Confirm file deletion for each file.
  2365.     ^2/Q^0  Don't display filenames as they are deleted.  DEL will do a
  2366.         fast delete if you specify the ^B/Q^b switch, and the filename
  2367.         doesn't use the extended 4DOS wildcards.
  2368.     ^2/S^0  Delete matching files in the subdirectories.
  2369.     ^2/X^0  Remove empty subdirectories after deleting (use with ^B/S^b).
  2370.     ^2/Y^0  The reverse of ^B/P^b - it assumes a Y response to everything,
  2371.         including deleting an entire subdirectory.  ^B^KUse with caution!^K^b
  2372.     ^2/Z^0  Delete read-only, hidden and system files as well as normal files.
  2373.  
  2374. If you enter a subdirectory name, or a filename composed only of wildcards,
  2375. DEL asks for confirmation (Y or N), unless you specified the ^B/Y^bes option.
  2376. If you respond with a Y, DEL will delete all the files in that subdirectory
  2377. (except for hidden, system, and read-only files).
  2378.  
  2379. ^1EXAMPLE^0
  2380.  
  2381. Erase all the files in the current directory with a .BAK or .PRN extension:
  2382.  
  2383.     c:\> del *.bak *.prn
  2384.  
  2385. Delete the entire subdirectory tree starting with C:\UTIL, including hidden
  2386. and read-only files:
  2387.  
  2388.     c:\> del /sxyz c:\util
  2389.  
  2390. DELAY DELAY  (Internal 4DOS)
  2391.  
  2392. ^1SYNTAX^0
  2393.  
  2394.     ^BDELAY [seconds]^b
  2395.  
  2396. ^1PURPOSE^0
  2397.  
  2398. Pause for a specified period of time.
  2399.  
  2400. ^1COMMENTS^0
  2401.  
  2402. DELAY is useful in batch file loops while waiting for a condition to occur.
  2403. The default value is one second.
  2404.  
  2405. If you need a shorter delay, use @BEEP[BEEP] with a frequency < 20 Hz.
  2406.  
  2407. You can cancel a DELAY loop by pressing ^BCtrl-C^b.
  2408.  
  2409. See also @BEEP[BEEP].
  2410.  
  2411. ^1EXAMPLE^0
  2412.  
  2413. Wait for 10 seconds:
  2414.  
  2415.     delay 10
  2416.  
  2417. DESCRIBE DESCRIBE  (Internal 4DOS)
  2418.  
  2419. ^1SYNTAX^0
  2420.  
  2421.     ^BDESCRIBE [d:][path]filename... ["description"]^b
  2422.  
  2423. ^1PURPOSE^0
  2424.  
  2425. Create, modify, or delete file and subdirectory descriptions.
  2426.  
  2427. ^1COMMENTS^0
  2428.  
  2429. DESCRIBE adds descriptions (up to 40 characters) to MS-DOS filenames and
  2430. subdirectories.  The descriptions will be displayed when using DIR with the
  2431. default single column option, or when using @SELECT[SELECT].
  2432.  
  2433. File descriptions allow you to identify your files in much more meaningful
  2434. ways than MS-DOS allows in an eight character filename.
  2435.  
  2436. You can enter a description on the command line by entering the filename
  2437. followed by the description enclosed in quotes.  Using wildcards and/or
  2438. multiple filenames with a description on the command line will give all
  2439. matching files the same description.
  2440.  
  2441. Descriptions are stored in each directory in a hidden file called
  2442. ^BDESCRIPT.ION^b.  Use the @ATTRIB[ATTRIB] command to "unhide" this file if you need to
  2443. copy or delete it.
  2444.  
  2445. The description file is modified appropriately whenever you perform an
  2446. internal command (such as @COPY[COPY], @DEL[DEL], @MOVE[MOVE], or @REN[REN]), but not if you use
  2447. an external command (such as @REPLACE[REPLACE], @XCOPY[XCOPY], or a "DOS shell").
  2448.  
  2449. See also @DIR[DIR] and @SELECT[SELECT].
  2450.  
  2451. ^1EXAMPLE^0
  2452.  
  2453. Create a description for the file MEMO.TXT interactively:
  2454.  
  2455.     c:\> describe memo.txt
  2456.     Describe "memo.txt": Memo to Bob about party
  2457.  
  2458. Create the same description in a single command:
  2459.  
  2460.     c:\> describe memo.txt "Memo to Bob about party"
  2461.  
  2462. DIR DIR  (Internal 4DOS)
  2463.  
  2464. ^1SYNTAX^0
  2465.  
  2466.   ^BDIR [/1 /2 /4 /A[:-rhsda] /B /C /D /F /J /K /L /M /N /O:-deginsu /P /S^b
  2467.       ^B/T /U /V /W] [[d:][path]filename...]^B
  2468.  
  2469. ^1PURPOSE^0
  2470.  
  2471. Display information about files and subdirectories.
  2472.  
  2473. ^1COMMENTS^0
  2474.  
  2475. DIR displays information about the files and subdirectories in the
  2476. specified directory.  Depending upon the options specified, DIR can show
  2477. the filename, file attributes, size, date and time of the most recent
  2478. change to the file, and the file description.
  2479.  
  2480. The DIR options are:
  2481.  
  2482.     ^2/1^0 (^B1^b column)
  2483.         Single column display - display the filename, size, date, time, and
  2484.         description.  This is the default.
  2485.     ^2/2^0 (^B2^b columns)
  2486.         Two column display - display the filename, size, date, and time.
  2487.     ^2/4^0 (^B4^b columns)
  2488.         Four column display - display the filename and size, in K(ilobytes)
  2489.         or M(egabytes).
  2490.     ^2/A^0 (^BA^bttribute select)
  2491.         Display only those files that have the specified attribute set.
  2492.         A ^B/A^b with no attributes will display all files, including hidden
  2493.         and system files.  Preceding the attribute character with a '^2-^0' will
  2494.         display those files that do ^BNOT^b have that attribute set.  Attributes
  2495.         can also be combined.  The attributes are:
  2496.           ^2R^0  Read only
  2497.           ^2H^0  Hidden
  2498.           ^2S^0  System
  2499.           ^2D^0  Directory
  2500.           ^2A^0  Archive
  2501.     ^2/B^0 (^BB^bare)
  2502.         Suppress header line and summaries, and display file or subdirec-
  2503.         tory names only, in a single column (useful when redirecting output
  2504.         to a file or another program).
  2505.     ^2/C^0 (^C^base - use upper case)
  2506.         Display filenames in upper case (like COMMAND.COM).  See also
  2507.         @SETDOS%/U[SETDOS /U].
  2508.     ^2/D^0 (^BD^bisable colors)
  2509.         Disable directory colorization.
  2510.     ^2/F^0 (^F^bull path)
  2511.         Display fully expanded filenames (including drive & path) in one
  2512.         column.
  2513.     ^2/J^0 (^BJ^bstify names)
  2514.         Justify filenames (same format as COMMAND.COM).
  2515.     ^2/K^0 (suppress headers)
  2516.         Suppress the header display.
  2517.     ^2/L^0 (^BL^bower case)
  2518.         Display names in lower case.  This option will not convert
  2519.         extended characters to lower case.
  2520.     ^2/M^0 (suppress footers)
  2521.         Suppress the footer display.
  2522.     ^2/N^0 (reset DIR options)
  2523.         Reset DIR options to the default values (useful when displaying some
  2524.         files in one format, and then changing back to the default format.
  2525.     ^2/O^0 (sort ^BO^brder)
  2526.         Sort order; any combination of the following options:
  2527.           ^2-^0  Reverse the sort order for the next option
  2528.           ^2a^0  Sort by ASCII value rather than numeric value
  2529.           ^2d^0  Sort by date and time (oldest first)
  2530.           ^2e^0  Sort by extension
  2531.           ^2g^0  Group subdirectories together
  2532.           ^2i^0  Sort by the file description
  2533.           ^2n^0  Sort by the filename (this is the default)
  2534.           ^2r^0  Reverse the sort order for all options
  2535.           ^2s^0  Sort by size
  2536.           ^2u^0  Unsorted (same as COMMAND.COM)
  2537.     ^2/P^0 (^BP^bause)
  2538.         Pause after each screen page and wait for a key to be pressed
  2539.         (useful for displaying long directory listings).
  2540.     ^2/S^0 (^BS^bubdirectories)
  2541.         Display contents of the current directory and all of its subdirec-
  2542.         tories.  DIR will only display headers and summaries for those
  2543.         directories with matching filenames.
  2544.     ^2/T^0 (a^BT^btributes display)
  2545.         Display the filenames and attributes only (see @ATTRIB[ATTRIB]), in the
  2546.         format ^BRHSA^b, where:
  2547.           ^2R^0  Read only
  2548.           ^2H^0  Hidden
  2549.           ^2S^0  System
  2550.           ^2A^0  Archive
  2551.         When displaying attributes, DIR cannot display file descriptions.
  2552.     ^2/U^0 (s^B^bmmaries only)
  2553.         Display summary only (number of files & bytes used; both actual
  2554.         file size and the disk space used).
  2555.     ^2/V^0 (^BV^bertical sort)
  2556.         Display filenames sorted vertically rather than horizontally (with
  2557.         the ^B/2^b, ^B/4^b, or ^B/W^b option.
  2558.     ^2/W^0 (^BW^bide)
  2559.         Wide display - display the filenames only, horizontally across the
  2560.         screen (5 columns on an 80-character display).
  2561.  
  2562. DIR allows wildcard characters in the filename.  If you don't specify a
  2563. filename, DIR defaults to ^B*.*^b (display all files and subdirectories in the
  2564. current directory).
  2565.  
  2566. If you append filenames with a ^B;^b (an "@INCLUDE[include list]"), DIR will display
  2567. the matching filenames in a single directory listing.  Only the first file
  2568. in an include list can have a path.
  2569.  
  2570. If you have an ANSI driver loaded, you can display the subdirectories and
  2571. files in color by setting the @COLORDIR[%COLORDIR] variable or using the "@ColorDir[ColorDir=]"
  2572. INI directive.
  2573.  
  2574. If a country code was defined in the CONFIG.SYS file or by the @CHCP[CHCP]
  2575. command, DIR will display the date in the format for that country.  The
  2576. default date format is U.S. (mm-dd-yy).
  2577.  
  2578. DIR can handle directories of any size, limited only by the available
  2579. memory.  Each filename requires 32 bytes of MS-DOS memory plus the size of
  2580. the description (if any); a system with 128K of free MS-DOS memory can
  2581. display up to 4,000 files per directory.
  2582.  
  2583. Options on the command line apply only to the filenames which follow the
  2584. option, except that options at the end of the line apply to the preceding
  2585. filename only.  This allows you to specify several options for a group of
  2586. files, and retains compatibility with COMMAND.COM when a single filename
  2587. is specified.
  2588.  
  2589. See also "@ColorDir[ColorDir=]", @COLORDIR[%COLORDIR], @DESCRIBE[DESCRIBE], @SELECT[SELECT] and @TREE[TREE].
  2590.  
  2591. ^1EXAMPLES^0
  2592.  
  2593. Display the .WKS files, and then the .WK1 files in the current directory:
  2594.  
  2595.     c:\> dir *.wks *.wk1
  2596.  
  2597. Display the .WKS and .WK1 files together (an "include list"):
  2598.  
  2599.     c:\> dir *.wks;*.wk1
  2600.  
  2601. Display the files on drive C, including hidden and system files, pausing
  2602. after each page:
  2603.  
  2604.     c:\> dir /a/sp c:\*.*
  2605.  
  2606.  
  2607. DIRS DIRS (Internal 4DOS)
  2608.  
  2609. ^1SYNTAX^0
  2610.  
  2611.     ^BDIRS^b
  2612.  
  2613. ^1PURPOSE^0
  2614.  
  2615. Display the current directory stack.
  2616.  
  2617. ^1COMMENTS^0
  2618.  
  2619.  
  2620. DIRS displays the directory stack used by @PUSHD[PUSHD] and @POPD[POPD], most recent
  2621. entries first.  The stack holds ^B255^b characters (about 10 to 20 entries).
  2622.  
  2623.  
  2624. See also @PUSHD[PUSHD] and @POPD[POPD].
  2625.  
  2626. ^1EXAMPLE^0
  2627.  
  2628. Change directories and then display the directory stack:
  2629.  
  2630.     c:\> pushd c:\database
  2631.     c:\database> pushd d:\wordp\memos
  2632.     d:\wordp\memos> dirs
  2633.     c:\database
  2634.     c:\
  2635.  
  2636. DISKCOMP DISKCOMP  (External MS-DOS)
  2637.  
  2638. ^1SYNTAX^0
  2639.  
  2640.     ^BDISKCOMP [d:] [d:] [/1 /8]^b
  2641.  
  2642. ^1PURPOSE^0
  2643.  
  2644. Compare the contents of two diskettes.
  2645.  
  2646. ^1COMMENTS^0
  2647.  
  2648. DISKCOMP compares diskettes on a track-for-track basis.  It will not work
  2649. on fixed or virtual disks.
  2650.  
  2651. DISKCOMP does not recognize drive assignments made with @ASSIGN[ASSIGN].
  2652.  
  2653. The DISKCOMP options are:
  2654.  
  2655.     ^2/1^0  Compare only the first side of the disks.
  2656.     ^2/8^0  Compare only 8 sectors per track.
  2657.  
  2658. If no drive is specified, DISKCOMP uses the default drive.  If one drive is
  2659. specified, the default drive is used as the second drive for comparison.
  2660. DISKCOMP will prompt for disk changes if the comparison is between two disks
  2661. in the same drive.
  2662.  
  2663. See also @DISKCOPY[DISKCOPY].
  2664.  
  2665. ^1EXAMPLE^0
  2666.  
  2667. Compare the disks in A and B:
  2668.  
  2669.     c:\> diskcomp a: b:
  2670.  
  2671. DISKCOPY DISKCOPY  (External MS-DOS)
  2672.  
  2673. ^1SYNTAX^0
  2674.  
  2675.     ^BDISKCOPY [d:] [d:] [/1 /V]^b
  2676.  
  2677. ^1PURPOSE^0
  2678.  
  2679. Make exact track-for-track copies of diskettes.
  2680.  
  2681. ^1COMMENTS^0
  2682.  
  2683. DISKCOPY copies diskettes only.  It will not work on fixed, network or
  2684. virtual (RAM) disks, or on drives that have been @ASSIGN[ASSIGN]ed, @JOIN[JOIN]ed or
  2685. @SUBST[SUBST]ituted.
  2686.  
  2687. The first drive is the source, the second drive is the target.  If no
  2688. drive is specified, DISKCOPY uses the default drive as both source
  2689. and target.  If one drive is specified, the default drive is used as
  2690. the target.  DISKCOPY will prompt for disk changes if the comparison
  2691. is between two disks in the same drive.
  2692.  
  2693. DISKCOPY will format target disks that are unformatted, using exactly the
  2694. same format as the source disk.
  2695.  
  2696. The options for DISKCOPY are:
  2697.  
  2698.     ^2/1^0  Copy only the first side of the diskette.
  2699.     ^2/V^0  Verify the copy.
  2700.  
  2701. See also @COPY[COPY], @XCOPY[XCOPY] and @DISKCOMP[DISKCOMP].
  2702.  
  2703. ^1EXAMPLE^0
  2704.  
  2705. Make a copy of the diskette in drive A to drive B:
  2706.  
  2707.     c:\> diskcopy A: B:
  2708.  
  2709. DRAWBOX DRAWBOX  (Internal 4DOS)
  2710.  
  2711. ^1SYNTAX^0
  2712.  
  2713.     ^BDRAWBOX ulrow ulcol lrrow lrcol style [bright][blink] fg ON bg^b
  2714.             ^B[FILL bgfill] [SHADOW]^b
  2715.  
  2716. ^1PURPOSE^0
  2717.  
  2718. Draw a box on the screen.
  2719.  
  2720. ^1COMMENTS^0
  2721.  
  2722. DRAWBOX is useful for creating attractive screen displays in batch files.
  2723. DRAWBOX detects other lines and boxes on the display, and creates the
  2724. appropriate connector characters when possible (not all types of lines can
  2725. be connected with the available characters).
  2726.  
  2727. The row and column are zero-based, so on a standard 25 line by 80 column
  2728. display, valid rows are 0 - 24 and valid columns are 0 - 79.
  2729.  
  2730. The DRAWBOX parameters are:
  2731.  
  2732.     ^2ulrow^0   Row for upper left corner
  2733.     ^2ulcol^0   Column for upper left corner
  2734.     ^2lrrow^0   Row for lower right corner
  2735.     ^2lrcol^0   Column for lower right corner
  2736.     ^2style^0   Box drawing style:
  2737.                 ^20^0  no line drawing characters (box is drawn with blanks)
  2738.                 ^21^0  single line
  2739.                 ^22^0  double line
  2740.                 ^23^0  single line on top and bottom, double on sides
  2741.                 ^24^0  double line on top and bottom, single on sides
  2742.     ^2fg^0      Foreground character color
  2743.     ^2bg^0      Background character color
  2744.     ^2bgfill^0  Background fill color (for the inside of the box)
  2745.     ^2SHADOW^0  Include a transparent drop shadow.
  2746.  
  2747. DRAWBOX uses the standard @COLORS[4DOS color attributes] and names.
  2748.  
  2749. See also @ANSI[ANSI], @DRAWHLINE[DRAWHLINE] and @DRAWVLINE[DRAWVLINE].
  2750.  
  2751. ^1EXAMPLE^0
  2752.  
  2753. Draw a single line box around the entire screen with bright white lines on
  2754. a blue background:
  2755.  
  2756.     drawbox 0 0 24 79 1 bright white on blue fill blue
  2757.  
  2758. DRAWHLINE DRAWHLINE  (Internal 4DOS)
  2759.  
  2760. ^1SYNTAX^0
  2761.  
  2762.     ^BDRAWHLINE row columns length style [bright] [blink] fg ON bg^b
  2763.  
  2764. ^1PURPOSE^0
  2765.  
  2766. Draw a horizontal line on the screen.
  2767.  
  2768. ^1COMMENTS^0
  2769.  
  2770. DRAWHLINE is useful for creating attractive screen displays in batch files.
  2771. DRAWHLINE detects other lines and boxes on the display, and creates the
  2772. appropriate connector characters when possible (not all types of lines can
  2773. be connected with the available characters).
  2774.  
  2775. The row and column are zero-based, so on a standard 25 line by 80 column
  2776. display, valid rows are 0 - 24 and valid columns are 0 - 79.
  2777.  
  2778. The DRAWHLINE parameters are:
  2779.  
  2780.     ^2row^0     Start row
  2781.     ^2column^0  Start column
  2782.     ^2length^0  Length of line
  2783.     ^2style^0   Line drawing style:
  2784.                 ^21^0 - single line
  2785.                 ^22^0 - double line
  2786.     ^2fg^0      Foreground character color
  2787.     ^2bg^0      Background character color
  2788.  
  2789. DRAWHLINE uses the standard @COLORS[4DOS color attributes] and names.
  2790.  
  2791. See also @ANSI[ANSI], @DRAWVLINE[DRAWVLINE], @DRAWBOX[DRAWBOX], and @SCRPUT[SCRPUT].
  2792.  
  2793. ^1EXAMPLE^0
  2794.  
  2795. Draw a double line along the top row of the display with green characters
  2796. on a blue background:
  2797.  
  2798.     drawhline 0 0 79 2 green on blue
  2799.  
  2800. DRAWVLINE DRAWVLINE  (Internal 4DOS)
  2801.  
  2802. ^1SYNTAX^0
  2803.  
  2804.     ^BDRAWVLINE row columns length style [bright] [blink] fg ON bg^b
  2805.  
  2806. ^1PURPOSE^0
  2807.  
  2808. Draw a vertical line on the screen.
  2809.  
  2810. ^1COMMENTS^0
  2811.  
  2812. DRAWVLINE is useful for creating attractive screen displays in batch files.
  2813. DRAWVLINE detects other lines and boxes on the display, and creates the
  2814. appropriate connector characters when possible (not all types of lines can
  2815. be connected with the available characters).
  2816.  
  2817. The row and column are zero-based, so on a standard 25 line by 80 column
  2818. display, valid rows are 0 - 24 and valid columns are 0 - 79.
  2819.  
  2820. The DRAWVLINE parameters are:
  2821.  
  2822.  
  2823.     ^2row^0     Start row
  2824.     ^2column^0  Start column
  2825.     ^2length^0  Length of line
  2826.     ^2style^0   Line drawing style:
  2827.                 ^21^0 - single line
  2828.                 ^22^0 - double line
  2829.     ^2fg^0      Foreground character color
  2830.     ^2bg^0      Background character color
  2831.  
  2832. DRAWVLINE uses the standard @COLORS[4DOS color attributes] and names.
  2833.  
  2834. See also @DRAWBOX[DRAWBOX], @DRAWHLINE[DRAWHLINE], and @VSCRPUT[VSCRPUT].
  2835.  
  2836. ^1EXAMPLE^0
  2837.  
  2838. Draw a double line along the left margin of the display with bright red
  2839. characters on a black background:
  2840.  
  2841.     drawvline 0 0 24 2 bright red on black
  2842.  
  2843. ECHO ECHO  (Internal 4DOS)
  2844.  
  2845. ^1SYNTAX^0   (Internal 4DOS)
  2846.  
  2847.     ^BECHO [on | off | message]^b
  2848.  
  2849. ^1PURPOSE^0
  2850.  
  2851. Display the echo status, enable or disable batch file or command line
  2852. echoing, or display a message.
  2853.  
  2854. ^1COMMENTS^0
  2855.  
  2856. 4DOS defaults to ^BECHO ON^b in batch files.  To prevent a line from being
  2857. echoed, preface it with the ^B@@^b symbol.  You can default to ^BECHO OFF^b by
  2858. setting the variable VERBOSE to 0 (see @SETDOS%/V[SETDOS /V]).  The current ECHO state
  2859. is inherited by called batch files.
  2860.  
  2861. 4DOS defaults to ^BECHO OFF^b during keyboard input.  If you set ^BECHO ON^b from
  2862. the command line, 4DOS will display the fully parsed and expanded commands
  2863. (including aliases and variables) before they are executed.  ^BThe keyboard
  2864. ECHO state is independent of the batch file ECHO state^b; changing ECHO in a
  2865. batch file has no effect on the display at the command prompt, and vice
  2866. versa.
  2867.  
  2868. If no arguments are entered, ECHO displays the current echo state.
  2869.  
  2870. ECHO commands in a batch file will send messages to the screen while the
  2871. batch file executes, even if ECHO is set OFF.  You cannot use the command
  2872. separator character or the 4DOS @REDIRECTION[redirection] symbols (^B|><^b) in an ECHO
  2873. message, unless you enclose them in quotes or precede them with the escape
  2874. character.  If you want to echo a blank line, enter:
  2875.  
  2876.     ^Becho.^b
  2877.  
  2878. See also @ECHOS[ECHOS], @SETDOS[SETDOS], @SCREEN[SCREEN], @SCRPUT[SCRPUT], @VSCRPUT[VSCRPUT]
  2879. @TEXT[TEXT], and the "@BatchEcho[BatchEcho=]" INI directive).
  2880.  
  2881. ^1EXAMPLE^0
  2882.  
  2883. Enable command line echoing:
  2884.  
  2885.     c:\> echo on
  2886.  
  2887. Display a message in a batch file:
  2888.  
  2889.     echo Processing your print files...
  2890.  
  2891. Turn off batch file echoing, without displaying the ECHO command itself:
  2892.  
  2893.     @echo off
  2894.  
  2895. ECHOS ECHOS  (Internal 4DOS)
  2896.  
  2897. ^1SYNTAX^0
  2898.  
  2899.     ^BECHOS message^b
  2900.  
  2901. ^1PURPOSE^0
  2902.  
  2903. Display a message, without printing a trailing CR/LF.
  2904.  
  2905. ^1COMMENTS^0
  2906.  
  2907. ECHOS is useful for outputting text when you don't want 4DOS to add a
  2908. carriage return / linefeed pair.  (For example, when redirecting control
  2909. sequences to a printer.)  You cannot use the command separator character
  2910. or the 4DOS @REDIRECTION[redirection] symbols (^B|><^b) in an ECHOS message, unless you
  2911. enclose them in quotes or precede them with the escape character.
  2912.  
  2913. See also @ECHO[ECHO].
  2914.  
  2915. ^1EXAMPLE^0
  2916.  
  2917. Send a control sequence (an Esc+H) to the printer:
  2918.  
  2919.        c:\> echos eH > lpt1:
  2920.  
  2921. EDIT EDIT  (External MS-DOS)
  2922.  
  2923. ^1SYNTAX^0
  2924.  
  2925.     ^BEDIT [/B /G /H /NOHI] [[d:][path]filename]^b
  2926.  
  2927. ^1PURPOSE^0
  2928.  
  2929. Full-screen editor for ASCII files.
  2930.  
  2931. ^1COMMENTS^0
  2932.  
  2933. EDIT invokes the ^BQBASIC^b editor to do the actual file editing.
  2934.  
  2935. The EDIT options are:
  2936.  
  2937.        ^2/B^0  Display in black and white.
  2938.        ^2/G^0  Use fast screen updating on a CGA monitor.
  2939.        ^2/H^0  Display maximum number of lines possible.
  2940.     ^2/NOHI^0  Display in 8 colors rather than 16.
  2941.  
  2942. ENDLOCAL ENDLOCAL  (Internal 4DOS)
  2943.  
  2944. ^1SYNTAX^0
  2945.  
  2946.     ^BENDLOCAL^b
  2947.  
  2948. ^1PURPOSE^0
  2949.  
  2950. Restore the saved disk drive, directory, and environment.
  2951.  
  2952. ^1COMMENTS^0
  2953.  
  2954. ENDLOCAL restores the disk drive, directory, and environment variables
  2955. saved by the previous SETLOCAL command.  SETLOCAL and ENDLOCAL can only
  2956. be used in batch files, not in aliases.
  2957.  
  2958. See also @SETLOCAL[SETLOCAL].
  2959.  
  2960. ^1EXAMPLE^0
  2961.  
  2962. This batch file fragment saves the aliases, environment, drive, and current
  2963. working directory, changes the drive and directory, modifies some
  2964. environment variables, runs the program TEST1, and then restores the
  2965. original values:
  2966.  
  2967.     setlocal
  2968.     cdd d:\test
  2969.     set path=c:\;c:\dos;c:\util
  2970.     set lib=d:\lib
  2971.     test1
  2972.     endlocal
  2973.  
  2974. ESET ESET  (Internal 4DOS)
  2975.  
  2976. ^1SYNTAX^0
  2977.  
  2978.     ^BESET [/A /M] varname...^b
  2979.  
  2980. ^1PURPOSE^0
  2981.  
  2982. Edit environment variables and/or aliases.
  2983.  
  2984. ^1COMMENTS^0
  2985.  
  2986. ESET allows you to edit your environment @VARIABLES[variables] and @ALIAS[aliases] using the
  2987. 4DOS line editing commands.  The cursor will be positioned at the first
  2988. character of the variable or alias.  The ESET options are:
  2989.  
  2990.     ^2/A^0  Assume the argument is an alias.  This allows you to edit
  2991.         an alias with the same name as an environment variable.
  2992.     ^2/M^0  Edit an environment variable in the master environment rather
  2993.         than the local environment.
  2994.  
  2995.  
  2996. ESET will search for environment variables first, and then aliases.
  2997.  
  2998. 4DOS limits each environment variable or alias name to ^B80^b characters, and
  2999. its arguments to ^B255^b characters.
  3000.  
  3001. See also @ALIAS[ALIAS], @UNALIAS[UNALIAS], @ESET[SET], and @UNSET[UNSET].
  3002.  
  3003. ^1EXAMPLE^0
  3004.  
  3005. Edit the MS-DOS executable file search path:
  3006.  
  3007.     c:\> eset path
  3008.  
  3009. Create and then edit an alias:
  3010.  
  3011.     c:\> alias d dir /djp
  3012.     c:\> eset d
  3013.  
  3014. EXCEPT EXCEPT  (Internal 4DOS)
  3015.  
  3016. ^1SYNTAX^0
  3017.  
  3018.     ^BEXCEPT ([d:][path]filename...) command^b
  3019.  
  3020. ^1PURPOSE^0
  3021.  
  3022. Perform a command, except on the file(s) specified.
  3023.  
  3024. ^1COMMENTS^0
  3025.  
  3026. EXCEPT provides a means of executing a command on a group of files and/or
  3027. subdirectories, except those enclosed within the parentheses.
  3028.  
  3029. The command can be a 4DOS internal command or alias, an external command,
  3030. or a batch file.
  3031.  
  3032. You may use @WILDCARDS[wildcard] characters in a filename.
  3033.  
  3034. When using filename completion (see Command Line Editing in the 4DOS
  3035. manual) to get the filenames inside the parentheses, type a space after
  3036. the open parenthesis before entering a partial filename or pressing TAB.
  3037. Otherwise the command line editor will treat the open parenthesis as the
  3038. first character of the filename to be completed.
  3039.  
  3040. EXCEPT prevents operations on the specified file(s) by setting the hidden
  3041. attribute, performing the command, and then clearing the hidden attribute.
  3042. If EXCEPT is aborted in an unusual way, you may need to use the @ATTRIB[ATTRIB]
  3043. command to "unhide" (^B-H^b) the file(s).
  3044.  
  3045. ^BEXCEPT will not work with programs or commands that ignore the hidden
  3046. attribute^b.
  3047.  
  3048. See also @ATTRIB[ATTRIB].
  3049.  
  3050. ^1EXAMPLE^0
  3051.  
  3052. Erase all but the files beginning with MEMO and those ending in .WKS:
  3053.  
  3054.     c:\> except (memo*.* *.wks) del *.*
  3055.  
  3056. EXIT EXIT  (Internal 4DOS)
  3057.  
  3058. ^1SYNTAX^0
  3059.  
  3060.     ^BEXIT [value]^b
  3061.  
  3062. ^1PURPOSE^0
  3063.  
  3064. Return from a secondary command processor.
  3065.  
  3066. ^1COMMENTS^0
  3067.  
  3068. Some application programs will start a secondary copy of the command
  3069. processor to allow you execute MS-DOS commands.  To return to the
  3070. application again, type EXIT.
  3071.  
  3072. If you specify a value, EXIT will return that value to the parent process.
  3073.  
  3074. You cannot EXIT from the primary command processor, except when running a
  3075. "DOS box" in OS/2 2.0.
  3076.  
  3077. ^1EXAMPLE^0
  3078.  
  3079. Return to the previous command processor or application:
  3080.  
  3081.     c:\> exit
  3082.  
  3083. (Also see @EXITCODE[Exit Code]).
  3084.  
  3085. FASTOPEN  FASTOPEN  (External MS-DOS)
  3086.  
  3087. ^1SYNTAX^0
  3088.  
  3089.     ^BFASTOPEN d:[=nnn] ... [/X]^b
  3090.  
  3091. ^1PURPOSE^0
  3092.  
  3093. Save information on recently-opened files in memory to speed disk access.
  3094.  
  3095. ^1COMMENTS^0
  3096.  
  3097. When possible, use of ^Bdisk cache^b software (or hardware) provides more
  3098. flexibility and more significant performance improvement than FASTOPEN.
  3099.  
  3100. The FASTOPEN parameters are:
  3101.  
  3102.     ^2d:^0   Drive letter of the fixed disk drive to process.  Floppy disk
  3103.          drives, network drives, and drives created by @JOIN[JOIN], @SUBST[SUBST] or
  3104.          @ASSIGN[ASSIGN] may ^Bnot^b be used.
  3105.  
  3106.     ^2nnn^0  The number of directory or file entries to retain for drive d:.
  3107.          The value must be between ^B10^b and ^B999^b; the default is ^B34^b.  This
  3108.          parameter should be larger than the maximum number of nested
  3109.          subdirectories in the system.
  3110.  
  3111.     ^2/X^0   (DOS 5+ only) Create the FASTOPEN cache in expanded memory.
  3112.  
  3113. Too small a value of ^Bnnn^b will provide little performance improvement, and too
  3114. large a value will unnecessarily increase MS-DOS's overhead while it searches
  3115. the list, and may therefore degrade performance.
  3116.  
  3117. FASTOPEN is memory-resident, and uses about 3K of RAM (DOS 3.3).  Additional
  3118. memory used to store FASTOPEN's internal file list will be (35*nnn) bytes.
  3119.  
  3120. FASTOPEN will frequently generate critical errors if you rename directories
  3121. or move files to other directories.
  3122.  
  3123. ^1EXAMPLE^0
  3124.  
  3125. Initialize FASTOPEN for hard disk C:, with room to store information on the
  3126. last 64 directories/files accessed.
  3127.  
  3128.     fastopen c:=64
  3129.  
  3130. FC FC  (External MS-DOS)
  3131.  
  3132. ^1SYNTAX^0
  3133.  
  3134.      ^BFC [/A] [/C] [/L] [/LB] [/N] [/T] [/W] [/nnnn] [d:][path]filename1^b
  3135.                                 ^B[d:][path]filename2^b
  3136.     or
  3137.      ^BFC /B [d:][path]filename1 [d:][path]filename2^b
  3138.  
  3139. ^1PURPOSE^0
  3140.  
  3141. Compares files.
  3142.  
  3143. ^1COMMENTS^0
  3144.  
  3145. FC compares two files or sets of files and displays the differences between
  3146. them.
  3147.  
  3148. The FC options may vary in different versions of DOS; the following are for
  3149. MS-DOS 5.0:
  3150.  
  3151.     ^2/A^0     Abbreviated display.  FC will only show the first and last lines
  3152.            for each set of differences.
  3153.     ^2/B^0     Compare files in ^Bbinary^b mode byte-by-byte.  This is the
  3154.        default mode for files with extensions .COM, .EXE, .OBJ, .LIB,
  3155.            and .BIN.  If the ^B/B^b option is specified, no other option is
  3156.            allowed.
  3157.     ^2/C^0     Ignore case differences.
  3158.     ^2/L^0     Line-by-line compare in ASCII mode.  FC will attempt to
  3159.            resynchronize the files after each mismatch. ^BDefault^b mode for
  3160.            files which do not have extensions of .EXE, .COM, .OBJ, .LIB, or
  3161.            .BIN.
  3162.     ^2/LBn^0   Define the maximum number of differing lines allowed.  If more
  3163.            than ^Bn^b lines are different, the comparison is cancelled.  The
  3164.            default value is to allow up to ^B100^ different lines.
  3165.     ^2/N^0     Show line numbers during an ASCII comparison.
  3166.     ^2/T^0     Treat ^B^TAB^b characters and ^B^SPACE^ differently. If ^B/T^b is
  3167.            not specified, each tab is expanded to ^B8^b consecutive spaces.
  3168.     ^2/W^0     Compress consecutive white space characters (^Btabs^ and ^Bspaces^b)
  3169.        to a single space.
  3170.            hexadecimal (base 16).
  3171.     ^2/nnnn^0  Number of consecutive matching lines required to consider
  3172.            the files resynchronized after a mismatch.  If ^B/nnnn^b is not
  3173.        specified, FC will assume a value of ^B2^b.
  3174.  
  3175. See also @COMP[COMP] and @DISKCOMP[DISKCOMP].
  3176.  
  3177. ^1EXAMPLE^0
  3178.  
  3179. Compare ASCII files MEMO.DOC and MEMO.BAK:
  3180.  
  3181.     c:\> fc memo.doc memo.bak
  3182.  
  3183. Compare binary files TESTA.OVL and TEXTB.OVL
  3184.  
  3185.     c:\> fc /b testa.ovl and testb.ovl
  3186.  
  3187. FIND FIND  (External MS-DOS)
  3188.  
  3189. ^1SYNTAX^0
  3190.  
  3191.     ^BFIND [/C /I /N /V] "string" [d:][path]filename...^b
  3192.  
  3193. ^1PURPOSE^0
  3194.  
  3195. Searches files for a specified string.
  3196.  
  3197. ^1COMMENTS^0
  3198.  
  3199. You cannot use wildcard characters in the filenames.
  3200.  
  3201. The FIND options are:
  3202.  
  3203.     ^2/C^0  Display the number of lines containing the string.
  3204.     ^2/I^0  (DOS 5+ only) Ignore case in search.
  3205.     ^2/N^0  Display the line number of each matching line.
  3206.     ^2/V^0  Display all lines NOT containing the string.
  3207.  
  3208. ^1EXAMPLE^0
  3209.  
  3210. Search for the string "4DOS" in the file 4DOS.DOC, and display the line
  3211. numbers it appears on:
  3212.  
  3213.     c:\> find /n "4DOS" 4dos.doc
  3214.  
  3215. FOR FOR  (Internal 4DOS)
  3216.  
  3217. ^1SYNTAX^0
  3218.  
  3219.     ^BFOR [/A[:-RHSDA]] %%var IN (set) [DO] command^b
  3220.  
  3221. ^1PURPOSE^0
  3222.  
  3223. Repeat a command for several variables.
  3224.  
  3225. ^1COMMENTS^0
  3226.  
  3227. 4DOS sets ^Bvar^b sequentially to each member of ^B(set)^b, and then evaluates and
  3228. executes ^Bcommand^b for every argument in ^B(set)^b. If an argument in ^B(set)^b
  3229. contains @WILDCARDS[wildcard] characters, ^Bvar^b will be set sequentially to each matching
  3230. filename on the disk.  If a filename in ^B(set)^b begins with an ^B@@^b, ^Bvar^b will
  3231. be set sequentially to each line in the file.
  3232.  
  3233. The only switch in FOR is:
  3234.  
  3235.     ^2/A^0  Retrieve only those files with the specified attribute.  A /A with
  3236.         no attributes will retrieve all files, including hidden and system
  3237.         files, and subdirectories.  Preceding the attribute character with
  3238.         a '^2-^0' will retrieve those files that DON'T have that attribute set.
  3239.         Attributes can also be combined.  The attributes are:
  3240.           ^2R^0  Read only
  3241.           ^2H^0  Hidden
  3242.           ^2S^0  System
  3243.           ^2D^0  Directory
  3244.           ^2A^0  Archive
  3245.  
  3246. The command can be a 4DOS internal command or alias, an external command,
  3247. or a batch file.
  3248.  
  3249. In COMMAND.COM, you must use a single ^B%^b for the variable name from the
  3250. command line, and ^B%%^b when in a batch file.  4DOS will accept either ^B%^b or
  3251. ^B%%^b in either case.
  3252.  
  3253. COMMAND.COM requires the variable name to be a single character; 4DOS
  3254. supports variable names up to ^B80^b characters.
  3255.  
  3256. COMMAND.COM requires the word ^BDO^b on the command line; it is optional in
  3257. 4DOS.
  3258.  
  3259. Note that 4DOS supports ^Bnested^b FOR statements; COMMAND.COM does not.
  3260.  
  3261. ^1EXAMPLE^0
  3262.  
  3263. The following example compiles the C programs in the current directory that
  3264. have a "2" or a "3" somewhere in their name:
  3265.  
  3266.     c:\msc> for %a in (*2*.c *3*.c) do cl %a ;
  3267.  
  3268. The following example uses variable functions to delete the .BAK files for
  3269. which a corresponding .TXT file exists in the current directory:
  3270.  
  3271.     c:\docs> for %a in (*.txt) if exist %@@name[%a].bak del %@@name[%a].bak
  3272.  
  3273. FORMAT FORMAT  (External MS-DOS)
  3274.  
  3275. ^1SYNTAX^0
  3276.  
  3277.     ^BFORMAT d: [/1 /4 /8 /B /F:nn /N:sn /S /T:tn /V[:label]]^b
  3278.  
  3279. ^1PURPOSE^0
  3280.  
  3281. Format (initialize) a disk.
  3282.  
  3283. ^1COMMENTS^0
  3284.  
  3285. FORMAT analyzes a disk for any defective tracks and prepares the disk
  3286. for MS-DOS files.  It initializes the directory and sets up the file
  3287. allocation table (FAT) and the system loader.
  3288.  
  3289. If you do not specify a drive, FORMAT will format the default drive.
  3290.  
  3291. ^B^KCAUTION^k^b:  The FORMAT command will destroy all files on the target disk.
  3292.  
  3293. The FORMAT options are:
  3294.  
  3295.     ^2/1^0  Format a diskette for single-sided use.
  3296.     ^2/4^0  Format a double-density 5 1/4" diskette in a high-capacity drive.
  3297.     ^2/8^0  Format a diskette for 8 sectors per track rather than the default
  3298.         9 sectors in a double-density drive, or 15 in a high capacity drive.
  3299.     ^2/B^0  Leave space on the disk for the system files (IBMBIO.COM and
  3300.         IBMDOS.COM, or IO.SYS and MSDOS.SYS) so that they can be added
  3301.         later with the @SYS[SYS] command.
  3302.     ^2/F:nn^0  (DOS 5+ only) Specifies the formatted disk size.  (For example,
  3303.         ^B/F:360^b, ^B/F:720^b, ^B/F:1.2^b, ^B/F:1.44^b, and ^B/F:2.88^b)  This is an easier
  3304.         way to specify the disk size than having to combine ^B/N^b and ^B/T^b.
  3305.     ^2/N:nn^0  Specifies the number of sectors per track on the formatted
  3306.         disk.  Use ^B/N:9^b to format a 720KB disk in a 3.5" 1.44 MB drive.
  3307.     ^2/Q^0  (DOS 5+ only) Quick format - deletes the File Allocation Table
  3308.         and root directory of a formatted disk, but does not scan the
  3309.         disk for bad sectors.
  3310.     ^2/S^0  Copy the hidden operating system files and the command
  3311.         processor to the new disk.
  3312.     ^2/T:tn^0  Specifies the number of tracks per disk side on the formatted
  3313.         disk.  Use ^B/T:80^b to format a 720KB disk in a 3.5" 1.44 MB drive.
  3314.     ^2/U^0  (DOS 5+ only) Unconditional format - destroys all data on the
  3315.         disk and prevents unformatting the disk.
  3316.     ^2/V[:label]^0  Prompt for an 11-character disk volume label.  In DOS 4.0 and
  3317.         above, you can enter the label on the command line by following
  3318.         the ^B/V^b option with a colon and the label.
  3319.  
  3320. ^RIn MS-DOS 3.3 and earlier versions, ^BFORMAT /S^b will copy "COMMAND.COM" as the
  3321. command processor.  In MS-DOS 4.0 and later, ^BFORMAT /S^b will copy the program
  3322. specified by the @COMSPEC[%COMSPEC] environment variable, but name it "COMMAND.COM" on
  3323. the target disk, regardless of its original name.^R
  3324.  
  3325. See also @DISKCOPY[DISKCOPY], @SYS[SYS] and @UNFORMAT[UNFORMAT].
  3326.  
  3327. ^1EXAMPLES^0
  3328.  
  3329. Create a boot disk in drive A:
  3330.  
  3331.     c:\> format a: /s
  3332.  
  3333. Format a 3 1/2" double density disk in high capacity drive B: and prompt for
  3334. a volume label:
  3335.  
  3336.     c:\> format b: /n:9 /t:80 /v
  3337.  
  3338. FREE FREE  (Internal 4DOS)
  3339.  
  3340. ^1SYNTAX^0
  3341.  
  3342.     ^BFREE [d:] ...^b
  3343.  
  3344. ^1PURPOSE^0
  3345.  
  3346. Display the total disk space, total bytes used, and total bytes free on the
  3347. specified (or default) drive(s).
  3348.  
  3349. ^1COMMENTS^0
  3350.  
  3351. FREE provides the same disk information as the external MS-DOS command
  3352. CHKDSK, but without the wait.
  3353.  
  3354. See also @CHKDSK[CHKDSK] and @MEMORY[MEMORY].
  3355.  
  3356. ^1EXAMPLE^0
  3357.  
  3358. Display the status of drives A, B, and C:
  3359.  
  3360.     c:\> free a: b: c:
  3361.  
  3362. GLOBAL GLOBAL  (Internal 4DOS)
  3363.  
  3364. ^1SYNTAX^0
  3365.  
  3366.     ^BGLOBAL [/H /I /P /Q] command^b
  3367.  
  3368. ^1PURPOSE^0
  3369.  
  3370. Execute a command in the current directory and its subdirectories.
  3371.  
  3372. ^1COMMENTS^0
  3373.  
  3374. GLOBAL performs the specified command first in the current directory, and
  3375. then in every subdirectory under the current directory.
  3376.  
  3377. The command can be a 4DOS internal command or alias, an external command,
  3378. or a batch file.
  3379.  
  3380. The GLOBAL options are:
  3381.  
  3382.     ^2/H^0  Process @ATTRIB%hidden[hidden] subdirectories.
  3383.     ^2/I^0  Ignore exit codes.  If this option is not specified, GLOBAL will
  3384.         terminate if the command returns a non-zero @EXITCODE[exit code].
  3385.     ^2/P^0  Prompt for a Y/N whether to execute the command in each directory.
  3386.     ^2/Q^0  Do not display the directory names as each directory is accessed.
  3387.  
  3388.  
  3389. ^1EXAMPLE^0
  3390.  
  3391. Copy the files in every directory on drive A to the directory C:\TEMP:
  3392.  
  3393.     c:\> cd a:\ ^ global copy a:*.* c:\temp
  3394.  
  3395. GOSUB GOSUB  (Internal 4DOS)
  3396.  
  3397. ^1SYNTAX^0
  3398.  
  3399.     ^BGOSUB label^b
  3400.  
  3401. ^1PURPOSE^0
  3402.  
  3403. Call a subroutine in a batch file.
  3404.  
  3405. ^1COMMENTS^0
  3406.  
  3407. GOSUB calls the specified label as a subroutine.  The subroutine must end
  3408. with a @RETURN[RETURN] statement.  After the RETURN, 4DOS will continue processing
  3409. with the command following the GOSUB command.
  3410.  
  3411. 4DOS searches for the label starting at the first line of the batch file.
  3412. If the label doesn't exist, the batch file is terminated with the error
  3413. message "Label not found."
  3414.  
  3415. The label must begin with a colon (^B:^b), and appear by itself on the line.
  3416. 4DOS ignores case differences when matching labels.
  3417.  
  3418. See also @GOTO[GOTO] and @RETURN[RETURN].
  3419.  
  3420. ^1EXAMPLE^0
  3421.  
  3422. The following batch file fragment calls a subroutine which displays the
  3423. directory and returns:
  3424.  
  3425.     echo Calling a subroutine
  3426.     gosub subr1
  3427.     echo Returned from the subroutine
  3428.     quit
  3429.     :subr1
  3430.     dir /hw
  3431.     return
  3432.  
  3433. GOTO GOTO  (Internal 4DOS)
  3434.  
  3435. ^1SYNTAX^0
  3436.  
  3437.     ^BGOTO [/I] label^b
  3438.  
  3439. ^1PURPOSE^0
  3440.  
  3441. Continue batch file processing at the line following the label.
  3442.  
  3443. ^1COMMENTS^0
  3444.  
  3445. GOTO changes the current position in the batch file to the line immediately
  3446. following the label.
  3447.  
  3448. 4DOS searches for the label starting at the first line of the batch file.
  3449. If the label doesn't exist, the batch file is terminated with the error
  3450. message "Label not found."
  3451.  
  3452. The label must begin with a colon (^B:^b), and appear by itself on the line.
  3453. 4DOS ignores case differences when matching labels.
  3454.  
  3455. A GOTO will cancel all @IFF[IFF] nesting, unless you specify the ^B/I^b option.
  3456.  
  3457. See also @GOSUB[GOSUB].
  3458.  
  3459. ^1EXAMPLE^0
  3460.  
  3461. The following batch file fragment checks for the existence of the file
  3462. CONFIG.SYS.  If the file exists, 4DOS jumps to C_EXISTS and copies all
  3463. the files from the current directory to the root directory on A.  If
  3464. CONFIG.SYS doesn't exist, 4DOS prints an error message and exits.
  3465.  
  3466.     if exist config.sys goto C_EXISTS
  3467.     echo CONFIG.SYS doesn't exist - exiting
  3468.     quit
  3469.     :c_exists
  3470.     copy *.* a:\
  3471.  
  3472. GRAFTABL GRAFTABL  (External MS-DOS)
  3473.  
  3474. ^1SYNTAX^0
  3475.  
  3476.     ^BGRAFTABL [ ? | 437 | 860 | 863 | 865 | /STA ]^b
  3477.  
  3478. ^1PURPOSE^0
  3479.  
  3480. Load a character table to allow the CGA to display @>SUPPORT^ASCII[ASCII] values above ^B127^B.
  3481.  
  3482. ^1COMMENTS^0
  3483.  
  3484. Use GRAFTABL to display foreign language and line-drawing characters while in
  3485. graphics mode on a CGA (color graphics adapter).
  3486.  
  3487. The GRAFTABL options are:
  3488.  
  3489.     ^2?^0     Display the GRAFTABL syntax options.
  3490.     ^2437^0   Use the U.S./English code page (default).
  3491.     ^2860^0   Use the Portugese code page.
  3492.     ^2863^0   Use the French code page.
  3493.     ^2865^0   Use the Nordic code page.
  3494.     ^2/STA^0  Display the current GRAFTABL status.
  3495.  
  3496. GRAFTABL is memory-resident, and uses about 1.5K of RAM (DOS 3.3).
  3497.  
  3498. See also @GRAPHICS[GRAPHICS].
  3499.  
  3500. GRAPHICS GRAPHICS  (External MS-DOS)
  3501.  
  3502. ^1SYNTAX^0
  3503.  
  3504.     ^BGRAPHICS [printer] [/B /P=n /R /LCD]^b
  3505.  
  3506. ^1PURPOSE^0
  3507.  
  3508. Enables graphics printing, allowing a compatible printer to print a screen
  3509. image displayed on a graphics monitor.
  3510.  
  3511. ^1COMMENTS^0
  3512.  
  3513. The GRAPHICS parameters are:
  3514.  
  3515.     ^2printer^0  Selects one of the following printer types:
  3516.                ^BGRAPHICS^b = IBM Personal Graphics Printer, IBM Proprinter
  3517.                           or IBM Quietwriter
  3518.                ^BCOLOR1^b   = Black ribbon
  3519.                ^BCOLOR4^b   = Red/green/blue/black ribbon
  3520.                ^BCOLOR8^b   = Cyan/magenta/yellow/black ribbon
  3521.                ^BTHERMAL^b  = IBM PC convertible Thermal Printer
  3522.              The following printer types are only available with DOS 5:
  3523.                ^BHPDEFAULT^b = Any Hewlett-Packard PCL printer
  3524.                ^BDESKJET^b   = Hewlett-Packard DeskJet
  3525.                ^BGRAPHICSWIDE^b = IBM Personal Graphics Printer with an
  3526.                               11-inch wide carriage
  3527.                ^BLASERJET^b  = Hewlett-Packard LaserJet
  3528.                ^BLASERJETII^b = Hewlett-Packard LaserJet II
  3529.                ^BPAINTJET^b  = Hewlett-Packard PaintJet
  3530.                ^BQUIETJET^b  = Hewlett-Packard QuietJet
  3531.                ^BQUIETJETPLUS^b = Hewlett-Packard QuietJet Plus
  3532.                ^BRUGGEDWRITER^b = Hewlett-Packard RuggedWriter
  3533.                ^BRUGGEDWRITERWIDE^b = Hewlett-Packard RuggedWriterwide
  3534.                ^BTHINKJET^b  = Hewlett-Packard ThinkJet
  3535.     ^2/B^0       Prints background color (default is not to print background).
  3536.     ^2/P=n^0     Specifies the parallel port to which GRAPHICS sends screen
  3537.              output (default = first parallel port, normally LPT1:).
  3538.     ^2/R^0       Reverses the printed image to print black and white as they
  3539.              appear on the display.  The default is to print a white on
  3540.              black screen as black on white.
  3541.     ^2/LCD^0     Prints the image as it appears on the IBM PC Convertible LCD
  3542.              screen.  May not be implemented in some versions of MS-DOS.
  3543.  
  3544. GRAPHICS is memory-resident, and uses about 3.5K of RAM (DOS 3.3).
  3545.  
  3546. See also @GRAFTABL[GRAFTABL].
  3547.  
  3548. ^1EXAMPLES^0
  3549.  
  3550. Enable graphics printing on a graphics printer connected to parallel port 1;
  3551. background color will not be printed and the foreground image will print
  3552. in black:
  3553.  
  3554.     c:\> graphics
  3555.  
  3556. Enable graphics printing on a four color printer connected to the second
  3557. parallel port:
  3558.  
  3559.     c:\> graphics color4 /p=2 /r
  3560.  
  3561. HISTORY HISTORY  (Internal 4DOS)
  3562.  
  3563. ^1SYNTAX^0
  3564.  
  3565.     ^BHISTORY [/A command] [/F /P] [/R [d:][path]filename]^b
  3566.  
  3567. ^1PURPOSE^0
  3568.  
  3569. Display, read, or clear the history list.
  3570.  
  3571. ^1COMMENTS^0
  3572.  
  3573. If no parameters are entered, HISTORY displays the current history list.
  3574.  
  3575. The HISTORY options are:
  3576.  
  3577.  
  3578.     ^2/A^0  Add the specified command to the history list.
  3579.     ^2/F^0  Clear the command history list.
  3580.     ^2/P^0  Prompt for a key after displaying each page.
  3581.     ^2/R^0  Read the command history from the specified file. You can save the
  3582.         history list by redirecting the output of HISTORY to a file.
  3583.  
  3584.  
  3585. The number of commands saved in the history list depends on the length of
  3586. each command line.  The history list size can be specified at startup from
  3587. ^B256^b to ^B8192^b characters.  The default size is ^B1024^b characters.
  3588.  
  3589. You can disable saving commands to the history list, or specify a minimum
  3590. command line length to save, with the "@HistMin[HistMin=]" INI directive.
  3591.  
  3592. The HISTORY stack may also be accessed in a "popup" window. See the
  3593. @DIRECTIVES[History Window] INI directives.
  3594.  
  3595. ^1EXAMPLES^0
  3596.  
  3597. Display the history list:
  3598.  
  3599.     c:\> history
  3600.  
  3601. Clear the history entries:
  3602.  
  3603.     c:\> history /f
  3604.  
  3605. Save the history list to the file HISTFILE, and then read it in again:
  3606.  
  3607.     c:\> history > histfile
  3608.     c:\> history /r histfile
  3609.  
  3610. IF IF  (Internal 4DOS)
  3611.  
  3612. ^1SYNTAX^0
  3613.  
  3614.     ^BIF [NOT] condition [.AND. | .OR. | .XOR. [NOT] condition ...] command^b
  3615.  
  3616. ^1PURPOSE^0
  3617.  
  3618. Allow conditional execution of commands.
  3619.  
  3620. ^1COMMENTS^0
  3621.  
  3622. 4DOS first tests the given condition.  If the condition is true, 4DOS
  3623. executes the specified command, otherwise the command will be ignored.  If
  3624. you use the ^BNOT^b option, the command is executed only when the condition is
  3625. false.  ^BIF^b statements can be nested.
  3626.  
  3627. The command can be a 4DOS internal command or alias, an external command,
  3628. or a batch file.
  3629.  
  3630. For the string tests, case differences are ignored.  When comparing strings,
  3631. you should enclose them in double quotes (see examples).  The use of double
  3632. quotes reduces problems when the strings being compared contain characters
  3633. which may have another meaning to 4DOS.  If the strings begin with a digit,
  3634. IF will do a numeric comparison. Otherwise, ^BIF^b does an @>SUPPORT^ASCII[ASCII] comparison.
  3635.  
  3636. The ^B.AND.^b, ^B.OR.^b, and ^B.XOR.^b tests allow you to combine tests in an
  3637. IF statement.  The expressions are scanned from left to right.
  3638.  
  3639. The condition can be any of the following:
  3640.  
  3641.     string1 ^2==^0 string2
  3642.     string1 ^2EQ^0 string2
  3643.       If string1 is equal to string2, the condition is true.
  3644.  
  3645.     string1 ^2!=^0 string2
  3646.     string1 ^2NE^0 string2
  3647.       If string1 is not equal to string2, the condition is true.
  3648.  
  3649.     string1 ^2LT^0 string2
  3650.       If string1 is < string2, the condition is true.
  3651.  
  3652.     string1 ^2LE^0 string2
  3653.       If string1 is <= string2, the condition is true.
  3654.  
  3655.     string1 ^2GE^0 string2
  3656.       If string1 is >= string2, the condition is true.
  3657.  
  3658.     string1 ^2GT^0 string2
  3659.       If string1 is > string2, the condition is true.
  3660.  
  3661. In the tests below, the term "condition" refers to one of the relational
  3662. operators described for the string tests above (^B==^b, ^BEQ^b, ^BNE^b, ^BLT^b, etc.).
  3663.  
  3664.     ^2ERRORLEVEL^0 ^B[condition] number^b
  3665.       Test the exit code of the preceding external program.  If no
  3666.       relational operator (EQ, GT, etc.) is specified, the default is ^BGE^b.
  3667.       NOTE:  Not all programs return an explicit @EXITCODE[exit code].  In those
  3668.       cases, the behavior of ERRORLEVEL is undefined.
  3669.  
  3670.     ^2EXIST^0 ^B[d:][path]filename^b
  3671.       If the file exists, the condition is true.  You can use wildcard
  3672.       characters in the filename, in which case the condition is true if
  3673.       any file matching the wildcards exists.
  3674.  
  3675.     ^2ISALIAS^0 ^Baliasname^b
  3676.       If the specified name is an @ALIAS[alias], the condition is true.
  3677.  
  3678.     ^2ISDIR^0 ^B[d:]path^b
  3679.       If the subdirectory exists, the condition is true.
  3680.  
  3681.     ^2ISINTERNAL^0 ^Bcommand^b
  3682.       If the specified command is an internal 4DOS command, the condition
  3683.       is true.
  3684.  
  3685.     ^2ISLABEL^0 ^Blabelname^b
  3686.       If the specified label exists in the current batch file, the
  3687.       condition is true.
  3688.  
  3689. See also @IFF[IFF].
  3690.  
  3691. ^1EXAMPLES^0
  3692.  
  3693. Test for the presence of A:\JAN.DOC and copy it to the root directory on
  3694. drive C if it exists:
  3695.  
  3696.     c:\> if exist a:\jan.doc copy a:\jan.doc c:\
  3697.  
  3698. This batch file fragment tests for a string value:
  3699.  
  3700.     if "%cmd" == "ws" goto wordproc
  3701.     if "%cmd" NE "graphics" goto badentry
  3702.  
  3703. Test for more than 500K of free DOS memory:
  3704.  
  3705.     c:\> if %@@dosmem[k] gt 500 echo More than 500K free
  3706.  
  3707. Test for EMS and XMS memory both greater than 1 Mb:
  3708.  
  3709.     c:\> if %@@ems[m] gt 2 .AND. %@@xms[m] gt 1 echo Plenty of memory!
  3710.  
  3711. Run the program MONOPROG if the monitor type is monochrome:
  3712.  
  3713.     c:\> if %_monitor == mono monoprog
  3714.  
  3715. IFF IFF  (Internal 4DOS)
  3716.  
  3717. ^1SYNTAX^0
  3718.  
  3719.   ^BIFF [NOT] condition [.AND. | .OR. | .XOR. [NOT] condition ...] THEN ^^^b
  3720.      ^B ... ^ ELSE[[IFF] ... THEN] ^^ ... ^^ ENDIFF ^b
  3721.  
  3722. ^1PURPOSE^0
  3723.  
  3724. Allow IF/THEN/ELSE conditional execution of commands.
  3725.  
  3726. ^1COMMENTS^0
  3727.  
  3728. 4DOS first tests the given condition.  If the condition is true, 4DOS
  3729. executes the specified command(s) until the next ELSE, ELSEIFF, or ENDIFF;
  3730. otherwise the command(s) will be ignored and 4DOS will continue parsing at
  3731. the next ELSE, ELSEIFF, or ENDIFF.  If you use the ^BNOT^b option, commands are
  3732. executed only when the condition is false.  ^BIFF^b statements can be nested up
  3733. to ^B15^b levels deep.
  3734.  
  3735. The ^B.AND.^b, ^B.OR.^b, and ^B.XOR.^b tests allow you to combine tests in an
  3736. IFF statement.  The expressions are scanned from left to right; each
  3737. new ^B.AND.^b, ^B.OR.^b, or ^B.XOR.^b tests the combination of all preceding tests.
  3738.  
  3739. The command can be a 4DOS internal command or alias, an external command,
  3740. or a batch file.
  3741.  
  3742. If you do a @GOTO[GOTO] inside an IFF, 4DOS assumes you are jumping outside the
  3743. IFF statement.  You cannot GOTO another part of the same IFF, or inside
  3744. another IFF statement.
  3745.  
  3746. See the @IF[IF] command for a list of the tests available.
  3747.  
  3748. ^1EXAMPLE^0
  3749.  
  3750. The following batch file fragment tests the monitor type (monochrome or
  3751. color), and sets the appropriate colors and prompt:
  3752.  
  3753.     iff %_monitor == color then
  3754.       color bright white on blue ^^ cls
  3755.       prompt=$e[s$e[1;1f$e[41;1;37m$e[K  Path: $p$e[u$e[44;37m$n$g
  3756.     else
  3757.       prompt=$e[s$e[1;1f$e[0;7m$e[K  Path: $p$e[u$e[0m$n$g
  3758.     endiff
  3759.  
  3760. The following alias checks to see if the argument is a subdirectory.  If
  3761. so, the alias deletes the subdirectory's files and removes it (enter this
  3762. on one line):
  3763.  
  3764.     c:\> alias zap `iff isdir %1 then ^^ del /s/x/z %1 ^^ else ^^^
  3765.                                         echo Not a directory! ^^ endiff`
  3766.  
  3767. .OR. .OR.  (Logical Operator)
  3768.  
  3769.    (see @IF%.OR.[IF] and @IFF%.OR.[IFF]).
  3770.  
  3771. .AND. .AND.  (Logical Operator)
  3772.  
  3773.    (see @IF%.AND.[IF] and @IFF%.AND.[IFF]).
  3774.  
  3775. .XOR. .AND.  (Logical Operator)
  3776.  
  3777.    (see @IF%.XOR.[IF] and @IFF%.XOR.[IFF]).
  3778.  
  3779. INKEY INKEY  (Internal 4DOS)
  3780.  
  3781. ^1SYNTAX^0
  3782.  
  3783.     ^BINKEY [/K"..." /Wn] [text] %%varname^b
  3784.  
  3785. ^1PURPOSE^0
  3786.  
  3787. Get a single keystroke environment variable from standard input.
  3788.  
  3789. ^1COMMENTS^0
  3790.  
  3791. You can optionally display prompt text before the variable name.
  3792.  
  3793. The INKEY options are:
  3794.  
  3795.  
  3796.     ^2/K^0  The allowable keystrokes (@KEYS[Key Names], enclosed in double quotes.
  3797.         If you want to read a control or function key, you must enclose it in square
  3798.         brackets (for example, ^BINKEY /K"ab[F1][F10]"^b).
  3799.  
  3800.     ^2/W^0  Timeout period, where "^Bn^b" is the number of seconds to wait for a
  3801.         response.  If no keystroke is entered by the end of the timeout
  3802.         period, INKEY returns with the variable unchanged.  You can specify
  3803.         ^B/W0^b to check if a keystroke is waiting, and return immediately.
  3804.  
  3805.  
  3806. @>SUPPORT^ASCII[ASCII] values from ^B1^b to ^B255^b are stored as a character.  Extended characters
  3807. (for example, function keys & cursor keys) are stored as a string in decimal
  3808. format, with a leading ^B@@^b (for example, the F1 key is stored as @@59).
  3809.  
  3810. ^BINKEY^b and ^BINPUT^b are normally used as batch file commands, allowing you
  3811. great flexibility in entering or changing batch variables.
  3812.  
  3813. If you press ^BCtrl-C^b or ^BCtrl-BREAK^b while INKEY is waiting for a key, execution of an
  3814. alias will be terminated, and execution of a batch file will be suspended
  3815. while you are prompted whether to cancel the batch job.
  3816.  
  3817. See also @INPUT[INPUT].
  3818.  
  3819. The following table lists the common extended key codes:
  3820.  
  3821.     F1  @@59   Alt-F1  @@104   Ctl-F1  @@94    Shift-F1  @@84
  3822.     F2  @@60   Alt-F2  @@105   Ctl-F2  @@95    Shift-F2  @@85
  3823.     F3  @@61   Alt-F3  @@106   Ctl-F3  @@96    Shift-F3  @@86
  3824.     F4  @@62   Alt-F4  @@107   Ctl-F4  @@97    Shift-F4  @@87
  3825.     F5  @@63   Alt-F5  @@108   Ctl-F5  @@98    Shift-F5  @@88
  3826.     F6  @@64   Alt-F6  @@109   Ctl-F6  @@99    Shift-F6  @@89
  3827.     F7  @@65   Alt-F7  @@110   Ctl-F7  @@100   Shift-F7  @@90
  3828.     F8  @@66   Alt-F8  @@111   Ctl-F8  @@101   Shift-F8  @@91
  3829.     F9  @@67   Alt-F9  @@112   Ctl-F9  @@102   Shift-F9  @@92
  3830.    F10  @@68  Alt-F10  @@113  Ctl-F10  @@103  Shift-F10  @@93
  3831.  
  3832.     Home  @@71     Up    @@72    PgUp   @@73
  3833.     Left  @@75                  Right  @@77
  3834.     End   @@79     Down  @@80    PgDn   @@81
  3835.     Ins   @@82     Del   @@83
  3836.  
  3837.     Ctl-Home  @@119            Ctl-PgUp   @@132
  3838.     Ctl-Left  @@115            Ctl-Right  @@116
  3839.     Ctl-End   @@117            Ctl-PgDn   @@118
  3840.  
  3841.     Ctl-A  1    Ctl-N  14
  3842.     Ctl-B  2    Ctl-O  15
  3843.     Ctl-C  3    Ctl-P  16
  3844.     Ctl-D  4    Ctl-Q  17
  3845.     Ctl-E  5    Ctl-R  18
  3846.     Ctl-F  6    Ctl-S  19
  3847.     Ctl-G  7    Ctl-T  20
  3848.     Ctl-H  8    Ctl-U  21
  3849.     Ctl-I  9    Ctl-V  22
  3850.     Ctl-J  10   Ctl-W  23
  3851.     Ctl-K  11   Ctl-X  24
  3852.     Ctl-L  12   Ctl-Y  25
  3853.     Ctl-M  13   Ctl-Z  26
  3854.  
  3855.     Alt-A  @@30   Alt-N  @@49   Alt-1  @@120
  3856.     Alt-B  @@48   Alt-O  @@24   Alt-2  @@121
  3857.     Alt-C  @@46   Alt-P  @@25   Alt-3  @@122
  3858.     Alt-D  @@32   Alt-Q  @@16   Alt-4  @@123
  3859.     Alt-E  @@18   Alt-R  @@19   Alt-5  @@124
  3860.     Alt-F  @@33   Alt-S  @@31   Alt-6  @@125
  3861.     Alt-G  @@34   Alt-T  @@20   Alt-7  @@126
  3862.     Alt-H  @@35   Alt-U  @@22   Alt-8  @@127
  3863.     Alt-I  @@23   Alt-V  @@47   Alt-9  @@128
  3864.     Alt-J  @@36   Alt-W  @@17   Alt-0  @@129
  3865.     Alt-K  @@37   Alt-X  @@45
  3866.     Alt-L  @@38   Alt-Y  @@21
  3867.     Alt-M  @@50   Alt-Z  @@44
  3868.  
  3869. ^1EXAMPLES^0
  3870.  
  3871. Prompt for a number and store it in the variable NUM:
  3872.  
  3873.     inkey /K"123456789" Enter a number from 1 to 9:  %%num
  3874.  
  3875. The following batch file fragment waits up to 10 seconds for a character,
  3876. then tests to see if a "Y" was entered:
  3877.  
  3878.     set net=N
  3879.     inkey /w10 Do you want to load the network (Y/N)? %%net
  3880.     if "%net"=="Y" goto load_net
  3881.  
  3882. The following code fragment  checks to see if the ESCAPE key was pressed
  3883. since the last time the keyboard buffer was cleared:
  3884.  
  3885.      inkey /w0 %%i
  3886.      if "%@ascii[%i]" == "27" goto user_esc
  3887.  
  3888.  
  3889. INPUT INPUT  (Internal 4DOS)
  3890.  
  3891. ^1SYNTAX^0
  3892.  
  3893.     ^BINPUT [/Wn] [text] %%varname^b
  3894.  
  3895. ^1PURPOSE^0
  3896.  
  3897. Enter an environment variable from the standard input.
  3898.  
  3899. ^1COMMENTS^0
  3900.  
  3901. You can optionally display prompt text before the variable name.
  3902.  
  3903. The only INPUT option is:
  3904.  
  3905.     ^2/W^0  Specify a timeout period, where "^Bn^b" is the number of seconds to
  3906.         wait for a response.  If no keystroke is entered by the end of the
  3907.         timeout period, INPUT returns with the variable unchanged.  If you
  3908.         enter a key before the timeout period, INPUT will wait indefinitely
  3909.         for the remainder of the line.  You can specify ^B/W0^b to check if a
  3910.         key is already in the buffer, and return immediately.
  3911.  
  3912. All characters entered up to, but not including, the carriage return are
  3913. stored in the variable.
  3914.  
  3915. ^BINPUT^b and ^BINKEY^b are normally used as batch file commands, allowing you
  3916. great flexibility in entering or changing batch variables.
  3917.  
  3918. See also @INKEY[INKEY].
  3919.  
  3920. ^1EXAMPLE^0
  3921.  
  3922. The following batch file fragment prompts for a string and stores it in the
  3923. variable FNAME:
  3924.  
  3925.     input Enter the file name:  %%fname
  3926.  
  3927. JOIN JOIN  (External MS-DOS)
  3928.  
  3929. ^1SYNTAX^0
  3930.  
  3931.     ^BJOIN d: d:\path^b    or    ^BJOIN d: [/D]^b    or    ^BJOIN^b
  3932.  
  3933. ^1PURPOSE^0
  3934.  
  3935. Connect a drive to a directory on another drive.
  3936.  
  3937. ^1COMMENTS^0
  3938.  
  3939. The specified path must be an empty directory which is only one level deep
  3940. from the root; it cannot be the current directory.  If the named directory
  3941. doesn't exist, MS-DOS creates it automatically.
  3942.  
  3943. Entering JOIN with no parameters will produce a list of the drives and
  3944. directories that are JOINed.  The only JOIN option is:
  3945.  
  3946.     ^2/D^0  Disconnect a join.
  3947.  
  3948. Once a drive is JOINed it no longer exists to the system and "invalid drive
  3949. specification" will be indicated if the user attempts to refer to the drive.
  3950. The JOIN must be disconnected before the drive can be used again.
  3951.  
  3952. After a JOIN, the entire directory structure of the source drive appears
  3953. within the destination subdirectory.  Files in the root directory of the
  3954. source drive appear in the destination subdirectory itself; lower-level
  3955. directories on the source drive appear as corresponding lower-level
  3956. directories in the destination subdirectory.  This is the inverse of @SUBST[SUBST].
  3957.  
  3958. Do not JOIN a drive that has been @ASSIGN[ASSIGN]ed or @SUBST[SUBST]ituted.  Do not use
  3959. @BACKUP[BACKUP], @DISKCOMP[DISKCOMP], @DISKCOPY[DISKCOPY], @FORMAT[FORMAT] or @RESTORE[RESTORE] when JOIN is in effect.
  3960.  
  3961. See also @ASSING[ASSIGN] and @SUBST[SUBST].
  3962.  
  3963. ^1EXAMPLES^0
  3964.  
  3965. Join everything in drive A so that it appears in directory C:\ADISK:
  3966.  
  3967.     c:\> join a: c:\adisk
  3968.  
  3969. Undo the join:
  3970.  
  3971.     c:\> join a: /d
  3972.  
  3973. KEYB  KEYB  (External MS-DOS)
  3974.  
  3975. ^1SYNTAX^0
  3976.  
  3977.     ^BKEYB [/E /ID:nn] [xx[,[yyy],[[d:][path]filename]]]^b
  3978.  
  3979. ^1PURPOSE^0
  3980.  
  3981. Replaces the keyboard program contained in ROM BIOS to support keyboards
  3982. which do not have the default U.S. English layout.
  3983.  
  3984. ^1COMMENTS^0
  3985.  
  3986. The KEYB parameters are:
  3987.  
  3988.     ^2/E^0      (DOS 5+ only) An enhanced keyboard is installed on an 8086
  3989.             or 8088 computer.
  3990.     ^2/ID:nn^0  (DOS 5+ only) The keyboard in use, for countries with multiple
  3991.             keyboard layouts for the same language.
  3992.     ^2xx^0      The keyboard code such as "^BUK^b" (See MS-DOS documentation).
  3993.     ^2yyy^0     The code page number (See MS-DOS documentation).  If this is
  3994.             omitted, the default @CHCP%code pages[code page] for the country is assumed.
  3995.     ^2filename^0  The filename of the keyboard definition file.  If omitted,
  3996.             KEYB attempts to load KEYBOARD.SYS from the root directory of
  3997.             the current drive.
  3998.  
  3999. If there are no parameters, KEYB displays its current status.
  4000.  
  4001. KEYB supports two hot-keys:  ^BCtrl-Alt-F1^b switches back to the U.S. keyboard
  4002. while ^BCtrl-Alt-F2^b returns to the specified country keyboard.
  4003.  
  4004. KEYB is memory-resident, and uses about 5.5K of RAM (DOS 3.3).
  4005.  
  4006. See your MS-DOS documentation for more information on KEYB.
  4007.  
  4008. ^1EXAMPLES^0
  4009.  
  4010. Set the computer to use the UK keyboard:
  4011.  
  4012.     c:\> keyb uk,437,c:\dos33\keyboard.sys
  4013.  
  4014. Display the current KEYB status:
  4015.  
  4016.     c:\> keyb
  4017.  
  4018. KEYSTACK KEYSTACK  (Internal 4DOS)
  4019.  
  4020. ^1SYNTAX^0
  4021.  
  4022.     ^BKEYSTACK ["abc"] [nn] [key] [@@nn] [!] [/Wn]^b
  4023.  
  4024. ^1PURPOSE^0
  4025.  
  4026. Feed keystrokes to a program from a batch file or alias.
  4027.  
  4028. ^1COMMENTS^0
  4029.  
  4030. The KEYSTACK command depends on a small resident program called ^BKSTACK.COM^b,
  4031. which must be installed in your AUTOEXEC.BAT file.  If you don't have
  4032. KSTACK.COM installed, the KEYSTACK command will display an error message.
  4033.  
  4034. Characters entered within double quotes (^B"abc"^b) will be stored "as is" in
  4035. the keyboard buffer.  Numbers (^Bnn^b) not enclosed in quotes are @>SUPPORT^ASCII[ASCII] decimal
  4036. codes (e.g., 13 (Enter), or 27 (ESC)).  The number ^B0^b is a special case;
  4037. it is used with programs that flush the keyboard buffer (it tells the
  4038. program the buffer is clear, so subsequent keystrokes will be accepted
  4039. normally).
  4040.  
  4041. Characters not in double quotes are assumed to refer to control keys,
  4042. function keys, or Alt keys (i.e., F1, Alt-F7, etc.).  You can also
  4043. enter these keys by preceding them with an ^B@@^b followed by the @KEYS%Scan Codes and K[scan code]
  4044. (for example, @@59 is the F1 function key).
  4045.  
  4046. A "^B!^b" will clear all pending keystrokes, both in the KEYSTACK buffer and in
  4047. the keyboard buffer.
  4048.  
  4049. The ^2/W^0 option allows you to wait for the specified number of clock ticks
  4050. (each tick = 1/18th second) before passing the following characters.
  4051.  
  4052. You can store a maximum of ^B255^b characters.
  4053.  
  4054. Each time KEYSTACK is executed, it will clear any remaining keystrokes
  4055. stored by a previous KEYSTACK.
  4056.  
  4057. The 4DOS Keystack overcomes two weaknesses of input redirection: many
  4058. programs ignore standard input and read the keyboard directly, and input
  4059. redirection doesn't end until the program or command terminates.  You can't,
  4060. for example, use redirection to send the opening commands to a program and
  4061. then type the rest of the commands yourself.  But the Keystack lets you do
  4062. exactly that.
  4063.  
  4064. The 4DOS Keystack, which is often used in batch files and aliases, sends
  4065. keystrokes to an application program.  Once the Keystack is empty, the
  4066. program will receive the rest of its input from the keyboard.  The Keystack
  4067. is useful when you want a program to take certain actions automatically when
  4068. it starts.
  4069.  
  4070.  
  4071. If you are using a DOS-based multitasking system such as DESQview or Windows,
  4072. see your 4DOS documentation for information on loading KSTACK within a
  4073. window.
  4074.  
  4075. Some programs require both the @SUPPORT^ASCII[ASCII] code and the key's @KEYS^Scan Codes[scan code].
  4076. To put both together in the Keystack, multiply the scan code by ^B256^b, add
  4077. the ASCII code, and use the resulting numeric value as an argument to
  4078. KEYSTACK.  For example, the Enter key has a scan code of 28 and an ASCII code
  4079. of 13.  The combined code is (28 * 256) + 13 = 7181.  To put the combined
  4080. code for the Enter key on the keystack:
  4081.  
  4082.     c:\> keystack 7181
  4083.  
  4084. If a program has different uses for the similar keys on the regular keyboard
  4085. and the numeric keypad, it will need combined codes.
  4086.  
  4087. You may have to experiment with some programs to find the proper sequence of
  4088. keystrokes.  Programs which bypass both DOS and the computer's BIOS, and read
  4089. keystrokes directly from the keyboard hardware, will not accept input from
  4090. the 4DOS Keystack.  Few programs fit into this category except memory-
  4091. resident utilities.
  4092.  
  4093. When you use the Keystack, remember that you must put the keystrokes into the
  4094. Keystack ^Bbefore^b you run the program that will receive them.  The Keystack
  4095. will hold the keystrokes until a program asks for them.
  4096.  
  4097. ^1EXAMPLES^0
  4098.  
  4099. The following batch file starts Lotus 1-2-3 and loads the file specified
  4100. on the command line:
  4101.  
  4102.     pushd c:\123
  4103.     keystack 0 13 0 13 0 13 0 13 0 13 "/fr" 0 "%1" 13
  4104.     123
  4105.     popd
  4106.  
  4107. The same command defined as an alias (enter this on one line):
  4108.  
  4109.     alias 321 `pushd c:\123 ^^ keystack 0 13 0 13 0 13 0 13 0 13 "/fr"
  4110.                                   0 "%1" 13 ^^ 123 ^^ popd`
  4111.  
  4112. LABEL LABEL  (External MS-DOS)
  4113.  
  4114. ^1SYNTAX^0
  4115.  
  4116.     ^BLABEL [d:][volume label]^b
  4117.  
  4118. ^1PURPOSE^0
  4119.  
  4120. Create, change, or delete a volume label.
  4121.  
  4122. ^1COMMENTS^0
  4123.  
  4124. A volume label can contain up to 11 characters.  Do not use the MS-DOS
  4125. wildcard characters or any character from the following list:
  4126.  
  4127.     ^B" + ; ' = [ , ] \ . | < >^b
  4128.  
  4129. MS-DOS will convert lowercase letters to uppercase.
  4130.  
  4131. If the drive is omitted, MS-DOS will assume the default drive.  If the volume
  4132. label is omitted, LABEL will prompt for it.  If a blank label is entered in
  4133. response to the prompt, the disk label is deleted.
  4134.  
  4135. See also @αLABEL[@LABEL], @DISKCOPY[DISKCOPY] and @VOL[VOL].
  4136.  
  4137. ^1EXAMPLE^0
  4138.  
  4139. Label the disk in drive A as BACKUP_88:
  4140.  
  4141.     c:\> label a:backup_88
  4142.  
  4143. LH  LH  (Internal 4DOS)
  4144.  
  4145. ^1SYNTAX^0
  4146.  
  4147.     ^BLH [d:][path]filename^b    or    ^BLOADHIGH [d:][path]filename^b
  4148.  
  4149. ^1PURPOSE^0
  4150.  
  4151. Load a program into high DOS memory.
  4152.  
  4153. ^1COMMENTS^0
  4154.  
  4155. LOADHIGH requires MS-DOS or DR-DOS 5.0 or above, and (in MS-DOS) the
  4156. DOS=UMB command in your CONFIG.SYS file.  If there are no UMBs, or if the
  4157. program is too large to load in the largest available UMB, the program will
  4158. be loaded in low memory.
  4159.  
  4160. If you are using DR-DOS, LOADHIGH replaces the ^BHILOAD^b command.
  4161.  
  4162. ^1EXAMPLE^0
  4163.  
  4164. Load the program C:\UTIL\CACHE.EXE into high memory:
  4165.  
  4166.     c:\> loadhigh c:\util\cache.exe
  4167.  
  4168. LIST LIST  (Internal 4DOS)
  4169.  
  4170. ^1SYNTAX^0
  4171.  
  4172.     ^BLIST [/H /S /W] [d:][path]filename...^b
  4173.  
  4174. ^1PURPOSE^0
  4175.  
  4176. Display a file with forward and backward paging and scrolling.
  4177.  
  4178. ^1COMMENTS^0
  4179.  
  4180. LIST provides a much faster and more flexible way to view a file than @TYPE[TYPE],
  4181. without the overhead of using a text editor.
  4182.  
  4183. The LIST options are:
  4184.  
  4185.     ^2/H^0  Strip the high bit from each character before displaying.  This
  4186.         is useful when displaying files created by some word processors
  4187.         that turn on the high bit for formatting purposes.
  4188.     ^2/S^0  Read from the standard input rather than a file.  This allows you
  4189.         to redirect command output and view it with LIST.
  4190.     ^2/W^0  Wrap the text at the right margin.  This option is useful when
  4191.         displaying non-text files.
  4192.  
  4193. LIST uses the cursor pad to scroll through the file.  The following keys
  4194. have special meanings (the caret ^B^^^b means press the ^BCtrl^b key together with
  4195. the specified key):
  4196.  
  4197.     ^BHOME^b  Display the first page of the file
  4198.     ^BEND^b   Display the last page of the file
  4199.     ^BPgUp^b  Scroll back one page
  4200.     ^BPgDn^b  Scroll forwards one page
  4201.     ^BEsc^b   Exit the current file
  4202.     ^B^^C^b    Quit LIST
  4203.     ^B^b     Scroll up one line
  4204.     ^B^b     Scroll down one line
  4205.     ^B^b     Scroll left 8 columns
  4206.     ^B^b     Scroll right 8 columns
  4207.     ^B^^^b    Scroll left 40 columns
  4208.     ^B^^^b    Scroll right 40 columns
  4209.     ^BF1^b    Call the on-line help (^B4HELP.EXE^b)
  4210.     ^BF^b     Prompt and search for a string (case is ignored)
  4211.     ^BH^b     Toggle the "strip high bit" (^B/H^b) option
  4212.     ^BN^b     Find next matching string (case is ignored).  LIST saves the
  4213.             search string, so you can LIST multiple files and search for
  4214.             the same string by pressing ^BN^b in each file.
  4215.     ^BP^b     Print the file on LPT1
  4216.     ^BW^b     Toggle the "line wrap" (^B/W^b) option
  4217.  
  4218. ^BNote:^b The above default key assignments can be overridden with the proper
  4219.       INI directives.
  4220.  
  4221. LIST is normally only useful for displaying ASCII text files; executable
  4222. files (.COM and .EXE) and many data files will be unreadable due to the
  4223. presence of non-alphanumeric characters.
  4224.  
  4225. See also @TYPE[TYPE].
  4226.  
  4227.  
  4228. ^1EXAMPLES^0
  4229.  
  4230. Display the file MEMO.DOC:
  4231.  
  4232.     c:\> list memo.doc
  4233.  
  4234. Display the output from a DIR command:
  4235.  
  4236.     c:\> dir | list /s
  4237.  
  4238. LOADBTM LOADBTM  (Internal 4DOS)
  4239.  
  4240. ^1SYNTAX^0
  4241.  
  4242.     ^BLOADBTM [on | off]^b
  4243.  
  4244. ^1PURPOSE^0
  4245.  
  4246. Switch a batch file to or from BTM mode.
  4247.  
  4248. ^1COMMENTS^0
  4249.  
  4250. LOADBTM switches a batch file (BAT or BTM) to and from ^BBTM^b mode.  If no
  4251. argument is given, it displays the current LOADBTM status.
  4252.  
  4253. ^BBTM^b mode runs from two to five times faster than ^BBAT^b mode, but should
  4254. not be used to load memory resident programs or for self-modifying batch
  4255. files.
  4256.  
  4257. LOADBTM can only be used within a BAT or BTM file.
  4258.  
  4259. See the 4DOS manual for more information on BTM files.
  4260.  
  4261. ^1EXAMPLE^0
  4262.  
  4263. The following batch file (BAT) fragment loads some memory resident
  4264. programs, and then switches to BTM mode:
  4265.  
  4266.     Rem The initial default state is LOADBTM OFF
  4267.     Rem loading TSRs...
  4268.     ansi.com
  4269.     mouse.com
  4270.     Rem Switch to high-speed (BTM) mode now that TSRs are loaded
  4271.     loadbtm on
  4272.     set path=c:\;c:\util;c:\dos
  4273.     alias /r c:\aliases
  4274.     set temp=d:\
  4275.  
  4276. LOG LOG  (Internal 4DOS)
  4277.  
  4278. ^1SYNTAX^0
  4279.  
  4280.     ^BLOG [/W [d:]pathname] [ON | OFF | "text"]^b
  4281.  
  4282. ^1PURPOSE^0
  4283.  
  4284. Save a log of commands to a disk file.
  4285.  
  4286. ^1COMMENTS^0
  4287.  
  4288. The default LOG filename is "^B4DOSLOG.^b" in the root directory of the boot drive.
  4289. The LOG status and log filename will be passed to secondary shells.
  4290.  
  4291. Entering LOG with no parameters displays the log status (^BON^b or ^BOFF^b).
  4292. Entering LOG with text writes the text to the log file, even if LOG is
  4293. set OFF.  This allows you to enter headers in the log file.
  4294.  
  4295. You can specify a different filename with the ^2/W^0^B(rite)^b option.  ^B/W^b
  4296. automatically enables command logging.
  4297.  
  4298. Also see the "@LogName[LogName=]" INI directive.
  4299.  
  4300. The commands are stored in the log file as they are executed, after
  4301. performing any alias or variable expansion.
  4302.  
  4303. The LOG file format looks like:
  4304.  
  4305.     ^B[mm/dd/yy  hh:mm:ss] command^b
  4306.  
  4307. ^1EXAMPLES^0
  4308.  
  4309. Display the LOG status:
  4310.  
  4311.     c:\> log
  4312.     LOG is OFF
  4313.  
  4314. Enable command logging:
  4315.  
  4316.     c:\> log on
  4317.  
  4318. Enable command logging to the file C:\LOG\LOGFILE and insert a header:
  4319.  
  4320.     c:\> log /w c:\log\logfile
  4321.     c:\> log "Started work on the database system"
  4322.  
  4323. MD MD  (Internal 4DOS)
  4324.  
  4325. ^1SYNTAX^0
  4326.  
  4327.     ^BMD [d:]pathname...^b    or    ^BMKDIR [d:]pathname...^b
  4328.  
  4329. ^1PURPOSE^0
  4330.  
  4331. Create subdirectories.
  4332.  
  4333. ^1COMMENTS^0
  4334.  
  4335. To start at the root directory, start the pathname with a backslash (^B\^b).
  4336. To start at the parent directory, start the pathname with two periods (^B..^b).
  4337. All other pathnames start at the current directory.
  4338.  
  4339. The longest allowable path in MS-DOS from the root directory to any
  4340. subdirectory is ^B64^b characters (including backslashes).
  4341.  
  4342. See also @RD[RD].
  4343.  
  4344. ^1EXAMPLE^0
  4345.  
  4346. Create a subdirectory called MYDIR in the root directory:
  4347.  
  4348.     c:\> md \mydir
  4349.  
  4350. MEM MEM  (External MS-DOS)
  4351.  
  4352. ^1SYNTAX^0
  4353.  
  4354.     ^BMEM [/C /D /P]^b
  4355.  
  4356. ^1PURPOSE^0
  4357.  
  4358. Display information about allocated and free memory, and resident programs.
  4359.  
  4360. ^1COMMENTS^0
  4361.  
  4362. You cannot combine any of the MEM options.  The options are:
  4363.  
  4364.     ^2/C^0  Display a summary of memory usage by resident programs in
  4365.         conventional and upper memory.
  4366.     ^2/D^0  Displays a summary of memory usage by internal device drivers and
  4367.         resident programs, and total and available memory.
  4368.     ^2/P^0  Display the status of resident programs.
  4369.  
  4370. See also @MEMORY[MEMORY]
  4371.  
  4372. MEMORY MEMORY  (Internal 4DOS)
  4373.  
  4374. ^1SYNTAX^0
  4375.  
  4376.     ^BMEMORY^b
  4377.  
  4378. ^1PURPOSE^0
  4379.  
  4380. Display the system RAM status.
  4381.  
  4382. ^1COMMENTS^0
  4383.  
  4384. MEMORY displays the ^Btotal RAM^b, the ^Bfree RAM^b (available to applications
  4385. programs after loading MS-DOS, device drivers, 4DOS, and RAM resident
  4386. programs); the total and free ^Bexpanded^b memory; ^BXMS^b and ^Bextended^b memory (on
  4387. an 80286, 80386, or 80486), the total and free ^Benvironment space^b, the total
  4388. and free ^Balias list space^b, and the total command ^Bhistory space^b.
  4389.  
  4390. If you compare the free RAM displayed by MEMORY with that displayed by
  4391. @CHKDSK[CHKDSK] and some memory map programs, MEMORY will usually show a slightly
  4392. higher value.  The difference is the size of the environment passed to
  4393. these external programs; these programs do not count the passed environment
  4394. as free space.
  4395.  
  4396. See also @MEM[MEM].
  4397.  
  4398. ^1EXAMPLE^0
  4399.  
  4400. Display your RAM totals:
  4401.  
  4402.     c:\> memory
  4403.  
  4404. MIRROR MIRROR  (External MS-DOS)
  4405.  
  4406. ^1SYNTAX^0
  4407.  
  4408.     ^BMIRROR [d: ...] [/1 /Td[-entries]]^b
  4409.     or
  4410.     ^BMIRROR [/U]^b
  4411.     or
  4412.     ^BMIRROR [/PARTN]^b
  4413.  
  4414. ^1PURPOSE^0
  4415.  
  4416. Records information about disk drives for use by @UNDELETE[UNDELETE] and @UNFORMAT[UNFORMAT].
  4417.  
  4418. ^1COMMENTS^0
  4419.  
  4420. The MIRROR parameters are:
  4421.  
  4422.     ^2d:^0  The drive for which MIRROR should save information.
  4423.     ^2/L^0  Save only the latest information.  If no ^B/L^b is specified, MIRROR
  4424.         will make a backup copy of the existing file before saving the new
  4425.         information.
  4426.     ^2/PARTN^0  Save hard disk partition information to a file on a floppy
  4427.         disk.  UNFORMAT uses this file to rebuild partitions.
  4428.     ^2/Td[-entries]^0  Load a TSR program that monitors deletes and saves
  4429.         information used by UNDELETE to recovered deleted files.  ^Bd:^b
  4430.         specifies the disk to monitor; the optional ^Bentries^b parameter
  4431.         specifies the maximum number of entries in the deletion-tracking
  4432.         file (PCTRACKR.DEL).
  4433.     ^2/U^0  Unload the deletion-tracking program from memory.
  4434.  
  4435. See also @UNDELETE[UNDELETE] and @UNFORMAT[UNFORMAT].
  4436.  
  4437. ^1EXAMPLE^0
  4438.  
  4439. Save a copy of the FAT and root directory of drives C: and D:, and
  4440. install deletion tracking for C: and D:
  4441.  
  4442.     c:\> mirror c: d: /tc /td
  4443.  
  4444. MODE MODE  (External MS-DOS)
  4445.  
  4446. ^1SYNTAX^0
  4447.  
  4448. See below
  4449.  
  4450. ^1PURPOSE^0
  4451.  
  4452. Setup a printer, video display, serial port, or code page switching.
  4453.  
  4454. ^1COMMENTS^0
  4455.  
  4456. MODE is memory-resident, and uses about 1.2K of RAM (DOS 3.3).
  4457.  
  4458. To set the ^Bprinter^b parameters:
  4459.  
  4460.     ^BMODE LPT#[:][n][,[m][,p]]^b
  4461.  
  4462.       ^2#^0  ^B1^b, ^B2^b, or ^B3^b (the printer number).
  4463.       ^2n^0  ^B80^b or ^B132^b characters per line.
  4464.       ^2m^0  ^B6^b or ^B8^b lines per inch.
  4465.       ^2P^0  Force a continuous retry on printer time-out errors.
  4466.  
  4467. To set the ^Bvideo display^b parameters:
  4468.  
  4469.     ^BMODE n^b    or    ^BMODE [n],m[,T]^b
  4470.  
  4471.       ^2n^0  ^B40^b, ^B80^b, ^BBW40^b, ^BBW80^b, ^BCO40^b, ^BCO80^b, or ^BMONO^b.
  4472.       ^2m^0  ^BR^b or ^BL^b  (shift the display right or left).
  4473.       ^2T^0  Display an alignment test pattern..
  4474.  
  4475. To set the ^Bserial port^b parameters:
  4476.  
  4477.     ^BMODE COMn:baud[,parity][,databits[,stopbits[,P]]]^b
  4478.  
  4479.       ^2n^0  ^B1^b, ^B2^b, ^B3^b or ^B4^b (serial port number)
  4480.       ^2baud^0  ^B11^B^b, ^B15^B^b, ^B30^b0, ^B60^b0, ^B12^b00, ^B24^b00, ^B48^b00, ^B96^b00 or ^B19^b200 (baud
  4481.           rate; only the first two digits are required).
  4482.       ^2parity^0  ^BN^b (none), ^BO^b (odd) or ^BE^b (even); the default is E.
  4483.       ^2databits^0  ^B7^b or ^B8^b; the default is 7.
  4484.       ^2stopbits^0  ^B1^b or ^B2^b  the default is 2 for 110 baud, and 1 for all
  4485.           other baud rates.
  4486.       ^2P^0  Force a continuous retry on printer time-out errors.
  4487.  
  4488. To redirect parallel port output to a serial port:
  4489.  
  4490.     ^BMODE LPT#:=COMn^b
  4491.  
  4492.       ^2#^0  ^B1^b, ^B2^b, or ^B3^b (parallel port or printer number).
  4493.       ^2n^0  ^B1^b, ^B2^b, ^B3^b or ^B4^b (serial port number).
  4494.  
  4495. Before parallel port output can be redirected, the serial port must be
  4496. initialized (see the previous option to set serial port parameters).
  4497.  
  4498. To prepare one or more code pages:
  4499.  
  4500.     ^BMODE device CODEPAGE PREPARE=((cplist) [d:][path]filename)^b
  4501.  
  4502.       ^2device^0  ^BCON^b, ^BPRN^b, ^BLPT1^b, ^BLPT2^b or ^BLPT3^b
  4503.       ^2(cplist)^0  one or more code page numbers.  The valid code page numbers
  4504.           are ^B437^b, ^B850^b, ^B860^b, ^B863^b and ^B865^b.
  4505.       ^2filename^0  Specifies the file containing the code page(s).  On an IBM
  4506.           PC these are:
  4507.              ^24201.CPI^0  IBM Proprinter
  4508.              ^25202.CPI^0  IBM Quietwriter III Printer
  4509.              ^2EGA.CPI^0   EGA type devices
  4510.              ^2LCD.CPI^0   IBM Convertible LCD display
  4511.  
  4512. CODEPAGE PREPARE can be abbreviated "^Bcp prep^b".  In the code page list,
  4513. unchanged pages are surrounded by commas.  For example in the list
  4514. (850,,863), the second code page remains as it was set in the previous
  4515. CODEPAGE PREPARE command for the device.
  4516.  
  4517. To select a code page:
  4518.  
  4519.     ^BMODE device CODEPAGE SELECT=cp^b
  4520.  
  4521.       ^2device^0  ^BCON^b, ^BPRN^b, ^BLPT1^b, ^BLPT2^b or ^BLPT3^b
  4522.       ^2cp^0  the code page number to be activated.  The valid code page
  4523.           numbers are ^B437^b, ^B850^b, ^B860^b, ^B863^b and ^B865^b.
  4524.  
  4525. CODEPAGE SELECT can be abbreviated "^Bcp sel^b".  The value of ^Bcp^b must be one
  4526. of the code pages previously activated for the specified device with the
  4527. CODEPAGE PREPARE option.
  4528.  
  4529. To display the active code page:
  4530.  
  4531.     ^BMODE device CODEPAGE [/STA]^b
  4532.       ^2device^0  ^BCON^b, ^BPRN^b, ^BLPT1^b, ^BLPT2^b or ^BLPT3^b
  4533.       ^2/STATUS^0  (or ^2/STA^0) is optional and has no effect
  4534.  
  4535. This command displays the active code page and a list of selectable code
  4536. pages for the specified device.
  4537.  
  4538. To refresh a code page:
  4539.  
  4540.     ^BMODE device CODEPAGE REFRESH^b
  4541.  
  4542. This command refreshes the code page on the specified device if it has been
  4543. lost (for example, by turning off the printer).  CODEPAGE REFRESH can be
  4544. abbreviated "^Bcp ref^b".
  4545.  
  4546. See the MS-DOS manual for more information on code pages.  Also see @CHCP[CHCP]
  4547. and @NLSFUNC[NLSFUNC].
  4548.  
  4549. MORE MORE  (External MS-DOS)
  4550.  
  4551. ^1SYNTAX^0
  4552.  
  4553.     ^BMORE^b
  4554.  
  4555. ^1PURPOSE^0
  4556.  
  4557. Display a screen-full of data, then pause.
  4558.  
  4559. ^1COMMENTS^0
  4560.  
  4561. Pressing any key sends another screen of data to the standard output
  4562. device.  This continues until all input data has been read.
  4563.  
  4564. You can usually use ^BLIST^b, ^BLIST /S^b or ^BTYPE /P^b rather than MORE.
  4565.  
  4566. See also @LIST[LIST] and @MOVE[TYPE].
  4567.  
  4568. MOVE MOVE  (Internal 4DOS)
  4569.  
  4570. ^1SYNTAX^0
  4571.  
  4572.  ^BMOVE [d:][path]filename... [d:][path][filename] [/C /D /H /N /P /Q /R /S /U]^b
  4573.  
  4574. ^1PURPOSE^0
  4575.  
  4576. Move files to other directories and drives.
  4577.  
  4578. ^1COMMENTS^0
  4579.  
  4580. The MOVE command moves the specified file(s) to the last filename specified,
  4581. which is designated as the target.  If the target already exists, it is
  4582. deleted when the file is moved.  You cannot move a file to itself.
  4583.  
  4584. If there is more than one source file specification, the target must be a
  4585. directory, and the files are moved to the directory with their original
  4586. filenames.  If the target is not a directory, MOVE will display an error
  4587. message and exit.
  4588.  
  4589. ^B^KUse caution^k^b when using ^BMOVE^b commands with commands like @SELECT[SELECT].  If
  4590. multiple files are selected and the target is not a subdirectory, each
  4591. file will be moved in turn to the target, overwriting the previous file.
  4592. The net result is that all files but the last will be deleted.  If SELECT
  4593. is invoked using square brackets instead of parentheses, the MOVE will be
  4594. done in a single command and MOVE will detect the error.
  4595.  
  4596. The MOVE options are:
  4597.  
  4598.     ^2/C^0 (^BC^bhanged)
  4599.         Move only files that exist in the target directory, and where
  4600.         the source file is newer than the target.
  4601.     ^2/D^0 (^BD^birectory)
  4602.         The target must be a directory.  If it doesn't exist, you will
  4603.         be prompted whether to create it.
  4604.     ^2/H^0 (^BH^bidden and system)
  4605.         Move all files, including hidden & system.
  4606.     ^2/N^0 (^BN^bothing)
  4607.         Do everything except actually move the file(s) (for testing what
  4608.         the result of a MOVE would be).
  4609.     ^2/P^0 (^BP^brompt)
  4610.         Prompt for a Y or N response to confirm each move.
  4611.     ^2/Q^0 (^BQ^buiet)
  4612.         Don't display filenames as they are moved.
  4613.     ^2/R^0 (^BR^beplace)
  4614.         Prompt for a Y or N response before overwriting an existing file.
  4615.     ^2/S^0 (^BS^bubdirectory tree)
  4616.         Move an entire subdirectory tree to another location.  The
  4617.         target directories will be created if they don't exist (except
  4618.         for the first target, which must already exist).  4DOS will remove
  4619.         empty subdirectories after the move.
  4620.     ^2/U^0 (^BU^bpdate)
  4621.         Move only those files that either don't exist in the target
  4622.         directory, or where the source file is newer than the target.
  4623.  
  4624. MOVE first attempts to rename the file(s).  If that fails (the target is
  4625. on a different drive, or the target already exists), MOVE will copy the
  4626. file(s) and then delete the originals.  If MOVE cannot delete the original
  4627. (for example, a read-only file), it will display an error message, but the
  4628. target file is still created.
  4629.  
  4630. See also @COPY[COPY], @REN[REN] and @XCOPY[XCOPY].
  4631.  
  4632. ^1EXAMPLES^0
  4633.  
  4634. Move some files to a different directory:
  4635.  
  4636.     c:\> move *.wks *.txt c:\finance\myfiles
  4637.  
  4638. Move all the files in the current directory to A:\, prompting before
  4639. overwriting any existing files:
  4640.  
  4641.     c:\> move /r *.* a:\
  4642.  
  4643. NLSFUNC NLSFUNC  (External MS-DOS)
  4644.  
  4645. ^1SYNTAX^0
  4646.  
  4647.     ^BNLSFUNC [[d:][path]filename]^b
  4648.  
  4649. ^1PURPOSE^0
  4650.  
  4651. Supports extended country information, and allows for the display and
  4652. printing of national symbol sets.
  4653.  
  4654. ^1COMMENTS^0
  4655.  
  4656. NLSFUNC must be loaded prior to using @CHCP[CHCP].
  4657.  
  4658. The filename specifies the name and location of the country information file.
  4659. If this parameter is omitted, the command will use the path and filename
  4660. specified in the ^BCOUNTRY=^b statement in the CONFIG.SYS file.
  4661.  
  4662. See your MS-DOS manual for more information on code page switching.
  4663.  
  4664. See also @CHCP[CHCP] and @MODE[MODE].
  4665.  
  4666. ^1EXAMPLE^0
  4667.  
  4668. Setup code page switching using COUNTRY.SYS in the C:\DOS33 directory:
  4669.  
  4670.     c:\> nlsfunc c:\dos33\country.sys
  4671.  
  4672. PATH PATH  (Inter 4DOS)
  4673.  
  4674. ^1SYNTAX^0
  4675.  
  4676.         ^BPATH [[d:]path][[;[d:]path]...]]^b
  4677.       or    ^BPATH ;^b
  4678.       or    ^BPATH^b
  4679.  
  4680. ^1PURPOSE^0
  4681.  
  4682. Tells 4DOS where to search for executable and batch files not in the
  4683. current directory. This information is kept in the @÷PATH[%PATH variable].
  4684.  
  4685. ^1COMMENTS^0
  4686.  
  4687. When searching for an external command (.COM, .EXE, .BTM, and .BAT, in that
  4688. order), 4DOS searches the current directory first, then the directories you
  4689. specify in the PATH, in the order you list them. The directory names are
  4690. separated by semicolons (^B;^b).
  4691.  
  4692. Like COMMAND.COM, 4DOS shifts the entire path to upper case before storing
  4693. it in the environment. This maintains compatibility with programs which
  4694. can only recognize an upper case path.
  4695.  
  4696. If you enter PATH with no parameters, 4DOS displays the current search
  4697. path.  If you enter PATH and a semicolon, 4DOS clears the search path and
  4698. will search only the current directory (this is the default at system
  4699. startup).
  4700.  
  4701. If you specify an invalid directory, 4DOS will skip that directory and
  4702. continue searching with the next directory in the path.
  4703.  
  4704. If you have a directory '^B.^b' in the PATH, 4DOS will not search the current
  4705. directory first, but wait until it reaches that point in the PATH.
  4706.  
  4707. Some applications also use the PATH to search for their files.
  4708.  
  4709. You can edit an existing path with the @ESET[ESET] command.
  4710.  
  4711. ^1EXAMPLES^0
  4712.  
  4713. The following PATH command directs 4DOS to search for an executable file
  4714. in the following order: the current directory, the root directory on drive
  4715. C, the DOS subdirectory on drive C, and the UTIL subdirectory on drive C:
  4716.  
  4717.     c:\> path c:\;c:\dos;c:\util
  4718.  
  4719. Display the current search path:
  4720.  
  4721.     c:\> path
  4722.  
  4723. PAUSE PAUSE  (Internal 4DOS0
  4724.  
  4725. ^1SYNTAX^0
  4726.  
  4727.     ^BPAUSE [message]^b
  4728.  
  4729. ^1PURPOSE^0
  4730.  
  4731. Suspend alias or batch file execution.
  4732.  
  4733. ^1COMMENTS^0
  4734.  
  4735. A PAUSE command will suspend execution, giving you the opportunity to
  4736. perform activities such as changing disks, turning on the printer, etc.
  4737.  
  4738. PAUSE waits for any key (except ^B^^C^b or ^B^^BREAK^b) to be pressed and then
  4739. continues executing.  If a prompt message is specified, 4DOS will display
  4740. the message and wait for a keystroke.  Otherwise, PAUSE will prompt:
  4741.  
  4742.      ^BPress a key when ready...^b
  4743.  
  4744. If you press a ^B^^C^b or ^B^^BREAK^b while PAUSE is waiting for a key, execution
  4745. of an alias will be terminated, and execution of a batch file will be
  4746. suspended while you are prompted whether to cancel the batch file.
  4747.  
  4748. See also @INKEY[INKEY] and @INPUT[INPUT].
  4749.  
  4750. ^1EXAMPLE^0
  4751.  
  4752. The following batch file fragment prompts the user before erasing files:
  4753.  
  4754.      pause ^^C aborts, any other key erases the .LST files:
  4755.      erase *.lst
  4756.  
  4757. POPD POPD  (Internal 4DOS)
  4758.  
  4759. ^1SYNTAX^0
  4760.  
  4761.     ^BPOPD [*]^b
  4762.  
  4763. ^1PURPOSE^0
  4764.  
  4765. Change to the disk drive and directory at the top of the directory stack.
  4766.  
  4767. ^1COMMENTS^0
  4768.  
  4769. POPD restores the disk and directory saved using @PUSHD[PUSHD] (most recent first).
  4770.  
  4771. The ^B*^b option clears the directory stack, without changing the current drive
  4772. and directory.
  4773.  
  4774. Use the @DIRS[DIRS] command to display the directory stack.
  4775.  
  4776. See also @DIRS[DIRS] and @PUSHD[PUSHD].
  4777.  
  4778. ^1EXAMPLES^0
  4779.  
  4780. Save and change your disk drive with PUSHD, and then restore it:
  4781.  
  4782.     c:\> pushd d:\database\test
  4783.     d:\database\test> popd
  4784.     c:\>
  4785.  
  4786. Clear the directory stack:
  4787.  
  4788.     c:\> popd *
  4789.  
  4790. PRINT PRINT  (External MS-DOS)
  4791.  
  4792. ^1SYNTAX^0
  4793.  
  4794.  ^BPRINT [/D:device] [/B:bufsiz] [/U:busytick] [/M:maxtick] [/S:timeslice]^b
  4795.       ^B[/Q:quesiz] [/T] [/C] [/P]...] [[d:][path][filename][.ext]...]^b
  4796.  
  4797. ^1PURPOSE^0
  4798.  
  4799. Queue and print data files.
  4800.  
  4801. ^1COMMENTS^0
  4802.  
  4803. The PRINT options are:
  4804.  
  4805.     ^2/D^0  Specify the print device; the default is ^BPRN^b.
  4806.     ^2/B^0  Set the size of the internal buffer; the default is ^B512^b.
  4807.     ^2/Q^0  Specify the maximum number of files in the print queue (^B1^b - ^B32^b;
  4808.         the default is ^B10^b).
  4809.     ^2/S^0  Specify the time-slice value (^B1^b - ^B255^b; the default is ^B8^b).
  4810.     ^2/U^0  Specify the number of clock ticks to wait for the printer; the
  4811.         default is ^B1^b.
  4812.     ^2/M^0  Specify how many clock ticks PRINT can have (^B1^b - ^B255^b; the default
  4813.         is ^B2^b).
  4814.     ^2/T^0  Stop printing and delete all files from the queue.
  4815.     ^2/C^0  Deletes the preceding filename from the print queue, and all
  4816.         following filenames until the end of the line or a ^B/P^b.
  4817.     ^2/P^0  Adds the preceding filename to the print queue, and all following
  4818.         filenames until the end of the line or a ^B/C^b.
  4819.     ^2filename^0  File(s) to be added (the default) and/or cleared from the
  4820.         print queue (see the ^B/C^b and ^B/P^b options).  The wildcard characters
  4821.         * and ? are allowed in file names.
  4822.  
  4823. Since PRINT is memory-resident, the ^B/D^b, ^B/B^b, ^B/U^b, ^B/M^b, ^B/S^b and ^B/Q^b options can
  4824. only be specified the first time it is invoked.  PRINT uses about 5K of RAM
  4825. (DOS 3.3), plus the amount of buffer space requested with the ^B/B^b option.
  4826.  
  4827. ^1EXAMPLE^0
  4828.  
  4829. Set the print device to LPT2, set the buffer to 4K, and the maximum queue
  4830. size to 10:
  4831.  
  4832.     c:\> print /D:lpt2 /B:4096 /Q:10
  4833.  
  4834. PROMPT PROMPT  (Internal 4DOS)
  4835.  
  4836. ^1SYNTAX^0
  4837.  
  4838.     ^BPROMPT [text]^b
  4839.  
  4840. ^1PURPOSE^0
  4841.  
  4842. Change the 4DOS command line prompt.
  4843.  
  4844. ^1COMMENTS^0
  4845.  
  4846. If you enter PROMPT with no parameters, 4DOS sets the prompt on drives A
  4847. and B to ^B$n$g^b (display current disk only), and on all other drives to ^B$p$g^b
  4848. (display current disk and directory).
  4849.  
  4850. The prompt text can contain special strings of the form ^B$?^b, where ? is one
  4851. of the following:
  4852.  
  4853.     ^2b^0  The ^B|^b character
  4854.     ^2c^0  The open parenthesis ^B(^b
  4855.     ^2D^0  Current ^Bdate^b, in the format:  Tue  Jan 1, 1991
  4856.     ^2d^0  Current ^Bdate^b, in the format:  Tue  1-01-91
  4857.     ^2e^0  The ASCII ^BES^bC character (decimal 27)
  4858.     ^2f^0  The close parenthesis ^B)^b
  4859.     ^2g^0  The ^B>^b character
  4860.     ^2h^0  ^BBACKSPACE^b over the previous character
  4861.     ^2l^0  The ^B<^b character
  4862.     ^2n^0  ^BDefault drive^b letter (upper case)
  4863.     ^2P^0  ^BCurrent disk and directory^b (upper case)
  4864.     ^2p^0  ^BCurrent disk and directory^b (lower case)
  4865.     ^2q^0  The ^B=^b character
  4866.     ^2s^0  The ^Bspace^b character
  4867.     ^2t^0  Current ^Btime^b, in the format hh:mm:ss
  4868.     ^2v^0  MS-DOS ^Bversion number^b, in the format:  3.31
  4869.     ^2Xd:^0  Current disk and directory (upper case) on drive ^Bd:^b
  4870.     ^2xd:^0  Current disk and directory (lower case) on drive ^Bd:^b
  4871.     ^2z^0  Display the current 4DOS shell ^Bnesting level^b (you must be running
  4872.        4DOS as the primary shell in swapping mode).  The primary command
  4873.        processor is ^B0^b.
  4874.     ^2$^0  The ^B$^b character
  4875.     ^2_^0  ^BCR/LF^b (go to beginning of new line)
  4876.  
  4877. You can embed any environment variable, 4DOS internal variable, or variable
  4878. function in your PROMPT string to view system status or resources.  When
  4879. defining the PROMPT to include variables of this type, use two "^B%^b" signs
  4880. before the variable name, or enclose the prompt string in back-quotes [^B`^b]
  4881. (if you don't, the prompt display will show the value the variable had when
  4882. the prompt was defined, not the value at the moment the prompt is displayed).
  4883. For example, to show free DOS memory to the left of the standard $p$g prompt:
  4884.  
  4885.                 prompt [%%@@dosmem[K]K] $p$g
  4886.         or      prompt `[%@@dosmem[K]K] $p$g`
  4887.  
  4888. See @VARIABLES%Variables Index[VARIABLES] and @FUNCTIONS%Functions Index[FUNCTIONS] for lists of the variables and functions
  4889. available.
  4890.  
  4891. Under COMMAND.COM, it is possible to use the PROMPT command in a batch file
  4892. to transmit ANSI control sequences to the screen (for example, to redefine
  4893. function keys).  This is because COMMAND.COM displays a prompt when echoing
  4894. lines in a batch file.  This technique will not work with 4DOS, because
  4895. 4DOS doesn't display a prompt within batch files; hence the characters in
  4896. the PROMPT string are never sent to ANSI.SYS.  To send ANSI sequences in
  4897. 4DOS, use the @ECHO[ECHO] command, substituting ^Be^b (^BCtrl-X^b followed by an ^Be^b) for
  4898. ^B$e^b in the PROMPT string.
  4899.  
  4900. See also @ANSI[ANSI].
  4901.  
  4902. ^1EXAMPLE^0
  4903.  
  4904. Set the prompt to the current date and time:
  4905.  
  4906.     c:\> prompt $d $t $g
  4907.     Mon Dec 25, 1989 18:29:19 >
  4908.  
  4909. PUSHD PUSHD  (Internal 4DOS)
  4910.  
  4911. ^1SYNTAX^0
  4912.  
  4913.     ^BPUSHD [[d:]pathname]^b
  4914.  
  4915. ^1PURPOSE^0
  4916.  
  4917. Save the current disk and directory.
  4918.  
  4919. ^1COMMENTS^0
  4920.  
  4921. PUSHD saves the current directory on the directory stack, and if a pathname
  4922. is specified on the command line, changes the disk drive and directory.
  4923. The directory stack can hold up to ^B255^b characters (about 10 to 20 entries).
  4924. If you exceed the directory stack size, the oldest directory is removed
  4925. before adding the current directory.
  4926.  
  4927. The saved directory is restored on a "last in, first out" basis by the @POPD[POPD]
  4928. command.  The directory stack can be displayed with the @DIRS[DIRS] command.
  4929.  
  4930. See also @CDD[CDD], @DIRS[DIRS] and @POPD[POPD].
  4931.  
  4932. ^1EXAMPLE^0
  4933.  
  4934. Save the current directory and change to C:\WORDP\MEMOS:
  4935.  
  4936.     c:\> pushd c:\wordp\memos
  4937.     c:\wordp\memos>
  4938.  
  4939. QUIT QUIT (Internal 4DOS)
  4940.  
  4941. ^1SYNTAX^0
  4942.  
  4943.     ^BQUIT [value]^b
  4944.  
  4945. ^1PURPOSE^0
  4946.  
  4947. Terminate the current batch file.
  4948.  
  4949. ^1COMMENTS^0
  4950.  
  4951. You can QUIT at any point in a batch file, not just the end.  If you QUIT
  4952. a batch file called from another batch file, you will be returned to the
  4953. previous file at the command following the original call.  To end all batch
  4954. file processing, use @CANCEL[CANCEL].  If you specify a value, QUIT will set the
  4955. @IF%ERRORLEVEL[ERRORLEVEL] to that value.
  4956.  
  4957. You can also use QUIT in an alias.  If you QUIT an alias while inside a
  4958. batch file, 4DOS will end both the alias and the batch file.
  4959.  
  4960. See also @CANCEL[CANCEL].
  4961.  
  4962. ^1EXAMPLE^0
  4963.  
  4964. Check to see if the user entered "quit" and exit if true:
  4965.  
  4966.     input Enter your choice:  %%option
  4967.     if "%option" == "quit" quit
  4968.  
  4969. RD RD  (Internal 4DOS)
  4970.  
  4971. ^1SYNTAX^0
  4972.  
  4973.     ^BRD [d:]path...^b    or    ^BRMDIR [d:]path...^b
  4974.  
  4975. ^1PURPOSE^0
  4976.  
  4977. Remove one or more directories.
  4978.  
  4979. ^1COMMENTS^0
  4980.  
  4981. Before removing a subdirectory, you must delete all the files and
  4982. subdirectories (and their files) in that directory (including any hidden
  4983. or read-only files).
  4984.  
  4985. You can use wildcard characters in the directory names.
  4986.  
  4987. You cannot remove the root directory (^B\^b), the current directory (^B.^b), or
  4988. the parent directory (^B..^b).
  4989.  
  4990. See also @MD[MD].
  4991.  
  4992. ^1EXAMPLE^0
  4993.  
  4994. Remove the subdirectory MEMOS from the directory WS on the current drive:
  4995.  
  4996.     c:\> rd \ws\memos
  4997.  
  4998. REBOOT  REBOOT  (Internal 4DOS)
  4999.  
  5000. ^1SYNTAX^0
  5001.  
  5002.     ^BREBOOT [/C /V]^b
  5003.  
  5004. ^1PURPOSE^0
  5005.  
  5006. Do a warm or cold reboot.
  5007.  
  5008. ^1COMMENTS^0
  5009.  
  5010. REBOOT defaults to performing a "^Bwarm^b" boot, without any prompting.  The
  5011. options are:
  5012.  
  5013.     ^2/C^0  "^BCold^b" reboot.  This is the same as powering the system off and
  5014.         on.  A cold boot may be necessary to properly initialize the system.
  5015.     ^2/V^0  Prompt for confirmation (Y or N) before rebooting.
  5016.  
  5017. REBOOT flushes the disk buffers, resets the drives, and waits one second
  5018. before rebooting the system, to allow disk caching programs to finish
  5019. writing any cached data.
  5020.  
  5021. ^1EXAMPLE^0
  5022.  
  5023. The following command prompts you to verify the reboot, then does a cold boot:
  5024.  
  5025.     c:\> reboot /v /c
  5026.  
  5027. RECOVER RECOVER  (External MS-DOS)
  5028.  
  5029. ^1SYNTAX^0
  5030.  
  5031.     ^BRECOVER [d:][[path]filename]^b    or    ^BRECOVER d:^b
  5032.  
  5033. ^1PURPOSE^0
  5034.  
  5035. Recover a single file that contains a bad sector (if its directory entry is
  5036. intact), or recover all of the files on a disk with a damaged directory.
  5037.  
  5038. ^1COMMENTS^0
  5039.  
  5040. ^K^BWARNING:  ^k^2^KThis is an extremely dangerous command.^0^b^k  If you specify recovery
  5041. of an entire disk, either explicitly or by failing to specify a file name,
  5042. RECOVER will attempt to recover the entire disk without further prompting!
  5043. In this case all directory structures, file names, and other distinguishing
  5044. information on the disk will be lost.  All files, including those with no bad
  5045. sectors, will be converted into root-directory files with names like
  5046. FILE0001.REC.
  5047.  
  5048. ^BWe strongly recommend you delete the RECOVER program provided with MS-DOS
  5049. from your disk^b.
  5050.  
  5051. The RECOVER parameters are:
  5052.  
  5053.     ^2d:^0        The drive designator for the drive that contains the single
  5054.               file or the entire drive that is to be recovered (default is
  5055.               the current drive).
  5056.     ^2path^0      The path containing the single file to be recovered (default
  5057.               is the current directory of the specified drive).
  5058.     ^2filename^0  The name of the file to be recovered (default is to recover
  5059.               the entire disk).
  5060.  
  5061. ^1EXAMPLES^0
  5062.  
  5063. Recover the entire disk in drive A:.  All files on the disk in drive A: will
  5064. be placed in the root directory and renamed FILEnnnn.REC.
  5065.  
  5066.     c:\> recover a:
  5067.  
  5068. Recover only the file named MEMO.ONE in the \REPORT directory on drive C:.
  5069. If this file has no bad sectors, it will remain unchanged.
  5070.  
  5071.     c:\> recover c:\report\memo.one
  5072.  
  5073. REM REM  (Internal 4DOS)
  5074.  
  5075. ^1SYNTAX^0
  5076.  
  5077.     ^BREM [comment]^b
  5078.  
  5079. ^1PURPOSE^0
  5080.  
  5081. Put a comment in a batch file.
  5082.  
  5083. ^1COMMENTS^0
  5084.  
  5085. If @ECHO[ECHO] is ON, or the variable VERBOSE (see the @SETDOS%/V[SETDOS /V] command) is set,
  5086. 4DOS will echo the comment.  Otherwise, 4DOS will ignore it.  If you don't
  5087. want to echo the line, preface REM with the ^B@@^b character.
  5088.  
  5089.  
  5090. Enter your comment following the REM, separated by a space or tab.
  5091. Comments can be up to ^B255^b characters.  4DOS will ignore everything
  5092. following a REM, including quote characters, the redirection symbols
  5093. (|><) and the command separator character.  An alternate way to put a
  5094. comment in a batch file is to begin the line with a "^B:^b"; 4DOS will
  5095. interpret the line as a label and ignore it; make sure you don't have
  5096. any actual labels beginning with the same word!
  5097.  
  5098. Batch file comments are useful for documenting the purpose for a batch
  5099. file and the procedures used.
  5100.  
  5101. ^1EXAMPLE^0
  5102.  
  5103. Enter comments in a batch file:
  5104.  
  5105.      rem This batch file provides a menu-based system for accessing the
  5106.      rem word processing utilities.  Clear the screen and get a selection
  5107.      cls
  5108.  
  5109. REN REN  (Internal 4DOS)
  5110.  
  5111. ^1SYNTAX^0
  5112.  
  5113.     ^BREN [/N /P /Q /S] [d:][path]oldname... [d:][path]newname^b
  5114.       or
  5115.     ^BRENAME [/N /P /Q /S] [d:][path]oldname... [d:][path]newname^b
  5116.  
  5117. ^1PURPOSE^0
  5118.  
  5119. Rename files or subdirectories.
  5120.  
  5121. ^1COMMENTS^0
  5122.  
  5123. The last filename is the new name; preceding names are the files or
  5124. directories to be renamed.  You can use @WILDCARDS[wildcard] characters in the
  5125. filenames.  The new filename must not already exist.  You cannot rename
  5126. a subdirectory to a new path!
  5127.  
  5128. The REN options are:
  5129.  
  5130.     ^2/N^0  (^BN^bothing): Do everything except actually rename the file(s) 
  5131.         (for testing what the result of a REN would be).
  5132.     ^2/P^0  (^BP^brompt): Confirm each rename (Y or N).
  5133.     ^2/Q^0  (^BQ^buiet): Don't display filenames as they are renamed.
  5134.     ^2/S^0  (^BS^bubdirectory):  Normally, you can rename a subdirectory only if 
  5135.       you do not use any wildcards in the old_name.  This prevents 
  5136.           subdirectories from being renamed inadvertently when a group of 
  5137.           files is being renamed with wildcards.  ^B/S^b will let you rename a 
  5138.           subdirectory even when you use wildcards.
  5139.  
  5140. REN in COMMAND.COM only allows a path to be specified with the first file
  5141. name; the path for the target is always the same as the source.  4DOS allows
  5142. you to optionally select the target path, renaming the source file to a new
  5143. directory on the same disk drive.  If you don't specify a path for the
  5144. target, 4DOS will assume a "COMMAND.COM compatible RENAME" and will rename
  5145. the source file to the new name without moving it to another directory.
  5146.  
  5147. If you want to rename to a different drive, use @MOVE[MOVE].
  5148.  
  5149. See also @MOVE[MOVE].
  5150.  
  5151. ^1EXAMPLE^0
  5152.  
  5153. Rename the file MEMO.TXT to OFFICE.TXT:
  5154.  
  5155.     c:\> ren memo.txt office.txt
  5156.  
  5157. Rename the directory \WORDPROC to \WS:
  5158.  
  5159.     c:\> ren \wordproc \ws
  5160.  
  5161. REPLACE  REPLACE  (External MS-DOS)
  5162.  
  5163. ^1SYNTAX^0
  5164.  
  5165.     ^BREPLACE [d:][path]source [target] [/A /P /R /S /U /W]^b
  5166.  
  5167. ^1PURPOSE^0
  5168.  
  5169. Selectively replaces files in one directory from those in another directory.
  5170.  
  5171. ^1COMMENTS^0
  5172.  
  5173. REPLACE copies the specified files to the destination directory.  If the
  5174. files already exist in the destination directory they are overwritten (unless
  5175. ^B/A^b is specified).  The default target is the current directory.
  5176.  
  5177. The ^B/S^b switch can be used to replace all copies of a file anywhere on a
  5178. disk with a newer copy.
  5179.  
  5180. REPLACE cannot copy or update @ATTRIB%hidden[hidden] or @ATTRIB%system[system] files.
  5181.  
  5182. The REPLACE parameters are:
  5183.  
  5184.     ^2/A^0  Add files to the destination directory that don't already exist,
  5185.         but do not replace existing files.  Cannot be used with ^B/S^b or ^B/U^b.
  5186.     ^2/P^0  Prompt before replacing or adding files.
  5187.     ^2/R^0  Replace read-only files.  If ^B/R^b is not specified, REPLACE stops
  5188.         at the first read-only source file it finds.
  5189.     ^2/S^0  Search all subdirectories of the target directory to find matches
  5190.         for source files.  Cannot be used with ^B/A^b.
  5191.     ^2/U^0  Replace only those files in the target directory that are older
  5192.         than those in the source directory.  Cannot be used with ^B/A^b.
  5193.     ^2/W^0  Prompt for a key-press before starting to replace files, allowing
  5194.         you to insert a source diskette on a floppy-only system.
  5195.  
  5196. See also @COPY[COPY] and @COPY[XCOPY].
  5197.  
  5198. ^1EXAMPLES^0
  5199.  
  5200. Replace files named PHONES.* in the \clients directory on drive C: with files
  5201. with the same name in the root directory of drive A:.  You will be prompted
  5202. before each replacement:
  5203.  
  5204.     c:\> replace a:\phones.* c:\clients /p
  5205.  
  5206. Copy all files from the root directory of drive A: to directory C:\UTILS,
  5207. except those which already exist in C:\UTILS:
  5208.  
  5209.     c:\> replace a:\*.* c:\utils /a
  5210.  
  5211. RESTORE  RESTORE  (External MS-DOS)
  5212.  
  5213. ^1SYNTAX^0
  5214.  
  5215.     ^BRESTORE d: [d:][path][filename] [/S /P /B:date /A:date /N /M /L:time^b
  5216.                                             ^B/E:time /D]^b
  5217.  
  5218. ^1PURPOSE^0
  5219.  
  5220. Restore backup files to disk.
  5221.  
  5222. ^1COMMENTS^0
  5223.  
  5224. The first argument is the source drive; the second is the target disk or file
  5225. specification.
  5226.  
  5227. The RESTORE options are:
  5228.  
  5229.     ^2/S^0  Restore all subdirectory files in addition to the
  5230.         specified directory.
  5231.     ^2/P^0  Prompt before overwriting files that have changed since
  5232.         the last backup, or that are marked read-only.
  5233.     ^2/B:date^0  Restore files modified on or before the date specified
  5234.         (the date format depends on the current country setting).
  5235.     ^2/A:date^0  Restore files modified on or after the date specified
  5236.         (the date format depends on the current country setting).
  5237.     ^2/M^0  Restore files that have been modified or deleted since the most
  5238.         recent backup.
  5239.     ^2/N^0  Restore files that no longer exist on the target.
  5240.     ^2/L:time^0  Restore only files modified at or after the time specified.
  5241.         The time is in hh:mm:ss format.
  5242.     ^2/E:time^0  Restore only files modified at or before the time specified.
  5243.         The time is in hh:mm:ss format.
  5244.     ^2/D^0  Display a list of the matching files on the backup disk, without
  5245.         actually restoring any files.
  5246.  
  5247. If no target is specified RESTORE will use the current drive and directory.
  5248. Files must be restored to the same directory they were in when the backup was
  5249. created with @BACKUP[BACKUP].  The wildcard characters ^B*^b and ^B?^b are allowed in the file
  5250. name.
  5251.  
  5252. RESTORE may not work properly if an @ASSIGN[ASSIGN], @JOIN[JOIN] or @SUBST[SUBST] was in effect at
  5253. the time the files were backed up, or if @APPEND[APPEND] is in effect when RESTORE is
  5254. run.
  5255.  
  5256. RESTORE will not restore existing system files.
  5257.  
  5258. See also @BACKUP[BACKUP].
  5259.  
  5260. ^1EXAMPLE^0
  5261.  
  5262. Restore the fixed disk C from the backup disks in A:
  5263.  
  5264.     c:\> restore a: c: /s
  5265.  
  5266. Restore the file \WS\MEMO.DOC from the backup disk in A:
  5267.  
  5268.     c:\> restore a: c:\ws\memo.doc
  5269.  
  5270. RETURN RETURN  (Internal 4DOS)
  5271.  
  5272. ^1SYNTAX^0
  5273.  
  5274.     ^BRETURN^b
  5275.  
  5276. ^1PURPOSE^0
  5277.  
  5278. Return from a GOSUB (subroutine) call in a batch file.
  5279.  
  5280. ^1COMMENTS^0
  5281.  
  5282. The RETURN command returns from a @GOSUB[GOSUB] call to the command following the
  5283. original GOSUB.
  5284.  
  5285. See also @GOSUB[GOSUB].
  5286.  
  5287. ^1EXAMPLE^0
  5288.  
  5289. The following batch file fragment calls a subroutine which displays the
  5290. current directory:
  5291.  
  5292.     echo Calling a subroutine
  5293.     gosub subr1
  5294.     echo Returned from the subroutine
  5295.     quit
  5296.     :subr1
  5297.     dir /hw
  5298.     return
  5299.  
  5300. SCREEN SCREEN  (Internal 4DOS)
  5301.  
  5302. ^1SYNTAX^0
  5303.  
  5304.     ^BSCREEN row column [message]^b
  5305.  
  5306. ^1PURPOSE^0
  5307.  
  5308. Position the cursor on the screen, and optionally display a message.
  5309.  
  5310. ^1COMMENTS^0
  5311.  
  5312. The row and column are zero-based, so on a standard 25 line by 80 column
  5313. display, valid rows are 0 - 24 and valid columns are 0 - 79.
  5314.  
  5315. SCREEN allows you to create attractive batch file screen displays.
  5316.  
  5317. SCREEN does not change the screen colors.  If you have ANSI.SYS installed
  5318. and have set colors with @CLS[CLS] or @COLOR[COLOR], those colors will be used for the
  5319. display.  To display text in specific colors, use @SCRPUT[SCRPUT].
  5320.  
  5321. SCREEN checks for a valid row and column, and displays an error message if
  5322. either value is out of range.
  5323.  
  5324. See also @ECHO[ECHO], @SCRPUT[SCRPUT], @TEXT[TEXT], and @VSCRPUT[VSCRPUT].
  5325.  
  5326. ^1EXAMPLE^0
  5327.  
  5328. The following batch file fragment displays a menu:
  5329.  
  5330.     @@echo off
  5331.     cls
  5332.     screen 3 10 Select a number from 1 to 4:
  5333.     screen 6 20 1 - Word Processing
  5334.     screen 7 20 2 - Spreadsheet
  5335.     screen 8 20 3 - Telecommunications
  5336.     screen 9 20 4 - Quit
  5337.  
  5338. SCRPUT SCRPUT  (Internal 4DOS)
  5339.  
  5340. ^1SYNTAX^0
  5341.  
  5342.     ^BSCRPUT row column [bright] [blink] fg ON bg text^b
  5343.  
  5344. ^1PURPOSE^0
  5345.  
  5346. Display text in color.
  5347.  
  5348. ^1COMMENTS^0
  5349.  
  5350. The row and column are zero-based, so on a standard 25 line by 80 column
  5351. display, valid rows are 0 - 24 and valid columns are 0 - 79.
  5352.  
  5353. SCRPUT works like @SCREEN[SCREEN], but allows you to specify the display colors, and
  5354. writes directly to the screen.
  5355.  
  5356. The parameters are:
  5357.  
  5358.     ^2row^0     Start row
  5359.     ^2column^0  Start column
  5360.     ^2fg^0      Foreground character color
  5361.     ^2bg^0      Background character color
  5362.     ^2text^0    The text to display
  5363.  
  5364. SCRPUT uses the standard @COLORS[4DOS color attributes] and names.
  5365.  
  5366. See also @ECHO[ECHO], @SCREEN[SCREEN], @TEXT[TEXT] and @VSCRPUT[VSCRPUT].
  5367.  
  5368. ^1EXAMPLE^0
  5369.  
  5370. The following batch file fragment displays a menu in color:
  5371.  
  5372.     @@echo off ^^ cls white on blue
  5373.     scrput 3 10 bri white on blue Select a number from 1 to 4:
  5374.     scrput 6 20 bri red on blue 1 - Word Processing
  5375.     scrput 7 20 bri yellow on blue 2 - Spreadsheet
  5376.     scrput 8 20 bri green on blue 3 - Telecommunications
  5377.     scrput 9 20 bri magenta on blue 4 - Quit
  5378.  
  5379. SELECT SELECT  (Internal 4DOS)
  5380.  
  5381. ^1SYNTAX^0
  5382.  
  5383.     ^BSELECT [/A[:-rhsda] /C /D /O:-deginsu] command ([d:][path]filename) ...^b
  5384.  
  5385. ^1PURPOSE^0
  5386.  
  5387. Execute a command on the specified files.  This command is completely
  5388. different from and replaces the MS-DOS command with the same name!
  5389.  
  5390. ^1COMMENTS^0
  5391.  
  5392. SELECT allows you to select command line file arguments by marking the
  5393. files using a full-screen "point-and-shoot" display.  SELECT substitutes
  5394. the selected files for the argument enclosed in parentheses, and executes
  5395. the command for each marked file.  If you specify multiple arguments in the
  5396. parentheses, SELECT will display the matching files for the first argument,
  5397. prompt you to mark the files, execute the command for each marked file, and
  5398. then continue the same procedure with the next argument.
  5399.  
  5400. The SELECT options are:
  5401.  
  5402.     ^2/A^0 (^BA^btributes)
  5403.         Display only those files that have the specified attribute set.
  5404.         Preceding the attribute character with a '^2-^0' will display those
  5405.         files that DON'T  have that attribute set.  Attributes can also be
  5406.         combined.  The attributes are:
  5407.           ^2R^0  Read only
  5408.           ^2H^0  Hidden
  5409.           ^2S^0  System
  5410.           ^2D^0  Directory
  5411.           ^2A^0  Archive
  5412.     ^2/C^0 (^BU^bpper case)
  5413.         Display filenames in upper case (like COMMAND.COM).  See also
  5414.         @SETDOS%/U[SETDOS /U].
  5415.     ^2/D^0 (^BD^bisable)
  5416.         Disable directory colorization.
  5417.     ^2/O^0 (^BS^bort order)
  5418.         Sort sequence, where ? can be any combination of the following:
  5419.           ^2-^0  Reverse the sort order for the next option
  5420.           ^2a^0  Sort by ASCII value rather than numeric value
  5421.           ^2d^0  Sort by date and time (oldest first)
  5422.           ^2e^0  Sort by extension
  5423.           ^2g^0  Group subdirectories together
  5424.           ^2i^0  Sort by the file description
  5425.           ^2n^0  Sort by the filename (this is the default)
  5426.           ^2r^0  Reverse the sort order for all options
  5427.           ^2s^0  Sort by size
  5428.           ^2u^0  Unsorted (same as COMMAND.COM)
  5429.  
  5430. If you append filenames with a ^B;^b (an "@INCLUDE[include list]"), SELECT will
  5431. display the matching filenames in a single listing.  Only the first
  5432. filename in an include list can have a path.
  5433.  
  5434. If you have an ANSI driver loaded, you can display the subdirectories and
  5435. files in color by setting the @COLORDIR[%COLORDIR] variable or using the "^BColorDir^b"
  5436. INI directive.
  5437.  
  5438. If you enclose the arguments in square brackets ^B[]^b rather than parentheses,
  5439. SELECT will insert all of the arguments into the command line and only
  5440. execute the command once.  You must be careful not to exceed the maximum
  5441. line length (^B127^b characters for external commands, and ^B255^b characters for
  5442. internal 4DOS commands).
  5443.  
  5444. SELECT uses the following keys:
  5445.  
  5446.     ^BUp^b, ^BDown^b, ^BPgUp^b, and ^BPgDn^b  Scroll through the files matching the
  5447.            argument(s).
  5448.         ^B+^b  Select a file.
  5449.         ^B-^b  Unselect a file.
  5450.         ^B*^b  Reverse all of the current marks (excluding subdirectories).
  5451.         ^B/^b  Unmark everything.
  5452.         ^BENTER^b  Execute the command on the marked files.  You can select
  5453.            a single file by moving the scroll bar to the filename and
  5454.            pressing ENTER.
  5455.         ^BEscape^b, ^B^^C^b, or ^B^^BREAK^b  Cancel the SELECT command.
  5456.  
  5457. ^1EXAMPLE^0
  5458.  
  5459. Select from the files in the current directory with the extension .COM, and
  5460. then from the files with the extension .EXE to copy to the root directory
  5461. on drive A:
  5462.  
  5463.     c:\> select copy (*.com *.exe) a:\
  5464.  
  5465. Select and run an executable program (.COM, .EXE, or .BAT) from files in
  5466. the C:\UTIL directory (an "include list"):
  5467.  
  5468.     c:\> select (c:\util\*.com;*.exe;*.bat)
  5469.  
  5470. SET SET  (Internal 4DOS)
  5471.  
  5472. ^1SYNTAX^0
  5473.  
  5474.     ^BSET [/M /P] [/R [d:][path]filename...] [variable=[value]]^b
  5475.  
  5476. ^1PURPOSE^0
  5477.  
  5478. Display, create, modify, or delete environment @VARIABLES[variables].
  5479.  
  5480. ^1COMMENTS^0
  5481.  
  5482. Entering SET with no variable or value displays the entire environment.  If
  5483. you don't enter a value, SET will display the value of that variable.
  5484. Otherwise, the variable and value are placed in the environment.  If the
  5485. variable already exists, its old contents are replaced by the new value.
  5486. 4DOS limits the variable name to a maximum of ^B80^b characters, and the value
  5487. to a maximum of ^B255^b characters.  The variable names are shifted to upper
  5488. case before being stored in the environment; the value is stored exactly
  5489. as entered.
  5490.  
  5491. The SET options are:
  5492.  
  5493.     ^2/M^0  Display or modify the master environment rather than the local
  5494.         copy of the environment.
  5495.     ^2/P^0  Pause after displaying a page of environment entries. Press ^B^^C^b to
  5496.         quit, or any other key to display the next page.
  5497.     ^2/R^0  Read environment variables from a file.  This is much faster than
  5498.         loading variables in a batch file.  The file is in the same format
  5499.         as the SET display, so SET /R can accept as input a file generated
  5500.         by redirecting SET output.
  5501.  
  5502.         For example, the following commands will save the environment
  5503.         variables to a file, and then reload them from that file:
  5504.  
  5505.             set > varlist
  5506.             set /r varlist
  5507.  
  5508.         You can load variables from multiple files by listing the filenames
  5509.         individually after the /R.
  5510.  
  5511.         You can add comments to a variable file by starting the comment
  5512.         line with a colon (^B:^b).
  5513.  
  5514. Unless you use the ^B/M^b option, SET only affects the environment of the
  5515. current command processor.  If you @EXIT[EXIT] to a parent command processor,
  5516. the original environment will be unchanged.  The size of the environment
  5517. is specified by the ^B/E^b parameter or the ^BEnvironment=" INI directive at
  5518. startup.  The default size is ^B512^b characters, the minimum size ^B256^b
  5519. characters, and the maximum size ^B32000^b characters.
  5520.  
  5521. You can remove multiple environment variables with the @UNSET[UNSET] command, and
  5522. edit environment variables with the @ESET[ESET] command.
  5523.  
  5524. See also @ESET[ESET] and @UNSET[UNSET].
  5525.  
  5526. ^1EXAMPLE^0
  5527.  
  5528. Display the current environment:
  5529.  
  5530.     c:\> set
  5531.  
  5532. Add a variable to the environment:
  5533.  
  5534.     c:\> set mine=c:\finance\myfiles
  5535.  
  5536. Remove a variable from the environment:
  5537.  
  5538.     c:\> set mine=
  5539.  
  5540. SETDOS SETDOS  (Internal 4DOS)
  5541.  
  5542. ^1SYNTAX^0
  5543.  
  5544.     ^BSETDOS [/A? /C? /E? /I+|-command /L? /M? /N? /R? /S?:? /U? /V?]^b
  5545.  
  5546. ^1PURPOSE^0
  5547.  
  5548. Display or set 4DOS configuration variables.
  5549.  
  5550.  
  5551. ^1COMMENTS^0
  5552.  
  5553. SETDOS allows you to customize 4DOS to your personal tastes.  You would
  5554. normally define the SETDOS variables in AUTOEXEC.BAT or 4START.BAT.
  5555. Note that all SETDOS functions correspond to (and override) 4DOS.INI
  5556. @DIRECTIVES[Directives].
  5557.  
  5558. The SETDOS options are:
  5559.  
  5560.     ^2/A^0 (^BA^bNSI)
  5561.        The ANSI variable determines whether 4DOS will attempt to use an
  5562.        ANSI escape sequence for @CLS[CLS].  4DOS normally determines this itself,
  5563.        but if you are using a non-standard ANSI driver or your loading
  5564.        sequence is unusual, you may need to explicitly inform 4DOS.  ^B/A0^b
  5565.        allows 4DOS to determine whether an ANSI driver is installed; ^B/A1^b
  5566.        forces 4DOS to assume an ANSI driver is installed; and ^B/A2^b forces
  5567.        4DOS to assume ANSI is not loaded.
  5568.        (Also see the "@ANSI=[ANSI=]" INI directive).
  5569.  
  5570.     ^2/C^0 (^BC^bompound character)
  5571.        The COMPOUND variable is the character used for separating
  5572.        multiple commands on the same line.  The default character is the
  5573.        caret (^B^^^b).  You cannot use any of the redirection characters (|><),
  5574.        or the whitespace characters (blank, tab, comma, semicolon, or
  5575.        equal) as the command separator.
  5576.        (Also see the "@CommandSep[CommandSep=]" INI directive).
  5577.  
  5578.     ^2/E^0 (^BE^bscape character)
  5579.        The ESCAPE variable is the character used to suppress the normal
  5580.        meaning of the following character.  Any character following the
  5581.        escape character will be passed unmodified to the command line.  The
  5582.        default escape character is ^B^^X^b (^BCtrl-X^b).  You cannot use any of the
  5583.        redirection characters (|><) or the whitespace characters (blank,
  5584.        tab, comma, semicolon, or equal) as the escape character.
  5585.         (Also see the "@EscapeChar[EscapeChar=]" INI directive).
  5586.  
  5587.     ^2/I^0 (^BI^bnternal)
  5588.        The INTERNAL variable allows you to disable or enable internal 4DOS
  5589.        @COMMAND%Commands Index[commands].  To disable a command, precede the command name with a
  5590.        ^Bminus^b (^B-^b).  To reenable a command, precede it with a ^Bplus^b (^B+^b).
  5591.         (Also see the "@CommandSep[CommandSep=]" INI directive).
  5592.  
  5593.     ^2/L^0 (^BL^bine)
  5594.        The LINE variable controls how 4DOS gets its input from the command
  5595.        line.  The default value is ^B/L0^b (character input).  If you set ^B/L1^b,
  5596.        4DOS uses the MS-DOS "Get Line" call (like COMMAND.COM). Note
  5597.        that this will disable command line editing, @HISTORY[history] recall, and
  5598.        filename expansion.  If you have a program that requires line input,
  5599.        you can define an alias or batch file:
  5600.  
  5601.            setdos /L1 ^^ program %& ^^ setdos /L0
  5602.  
  5603.        See the file APPNOTES.TXT for information on programs which require
  5604.        this option.
  5605.        (Also see the "@LineInput[LineInput=]" INI directive).
  5606.  
  5607.     ^2/M^0 (edit ^BM^bode)
  5608.        The MODE variable controls the line editing mode.  4DOS defaults
  5609.        to ^Boverstrike^b mode (^B/M0^b).  If MODE is set to ^B1^b, the default is
  5610.        ^Binsert^b mode.
  5611.        (Also see the "@EditMode[EditMode=]" INI directive).
  5612.  
  5613.     ^2/N^0 (^BN^boclobber)
  5614.        The NOCLOBBER variable controls output @REDIRECTION[redirection].  If NOCLOBBER is
  5615.        set to ^B1^0, existing files may not be destroyed by output redirection,
  5616.        and when appending with ^B>>^b, the output file must exist.  NOCLOBBER
  5617.        can be overridden with the ^B!^b character.  The default is ^B/N0^b.
  5618.        (Also see the "@NoClobber[NoClobber=]" INI directive).
  5619.  
  5620.     ^2/R^0 (^BR^bows)  The ROWS variable determines the number of screen rows used by the
  5621.        video display.  Normally 4DOS detects the screen size, but if you
  5622.        have a non-standard display you may need to set it explicitly.  The
  5623.        ROWS variable does not affect screen scrolling (that is controlled
  5624.        by your video BIOS or ANSI.SYS); it is used only for @LIST[LIST], @SELECT[SELECT],
  5625.        the paged output options (i.e., @TYPE%/P[TYPE /P]), and error checking in the
  5626.        screen output commands.
  5627.        (Also see the "@ScreenRows[ScreenRows=]" INI directive).
  5628.  
  5629.     ^2/S^0 (cursor ^BS^bhape)
  5630.       The SHAPE variable sets the 4DOS cursor shape.  The format is ^B/So:i^b,
  5631.        where "^Bo^b" is the cursor size for overstrike mode, and "^Bi^b" the cursor
  5632.        size for insert mode.  The size is entered as a percentage of the
  5633.        total character cell size.  The default values are ^B10:100^b (a thin
  5634.        underscore cursor for overstrike mode, and a block cursor for insert
  5635.        mode).  Because of the way video BIOSes remap the cursor, you may
  5636.        not get a smooth progression in the cursor size from 0 - 100%.
  5637.        To disable the cursor, use ^B/S0:0^b.
  5638.        (Also see the "@CursorIns[CursorIn=]" and "@CursorOver[CursorOver=]" INI directives).
  5639.  
  5640.     ^2/U^0 (^BU^bpper case)
  5641.        The UPPER variable controls the way filenames are displayed for the
  5642.        internal commands (@COPY[COPY], @DIR[DIR], etc.).  If UPPER is ^B1^0, filenames will
  5643.        be displayed in upper case (like COMMAND.COM).  The default is ^B/U0^0
  5644.        (filenames will be displayed in lower case).
  5645.        (Also see the "@UpperCase[UpperCase=]" INI directive).
  5646.  
  5647.     ^2/V^0 (^BV^berbose)
  5648.        The VERBOSE variable controls command echoing in batch files.  If
  5649.        VERBOSE is set to ^B0^b, batch files will NOT be echoed unless ECHO is
  5650.        set ON.  The default is ^B1^b (batch file commands WILL be echoed).  If
  5651.        VERBOSE is set to ^B2^b, 4DOS will echo all batch file lines, including
  5652.        those prefaced by a '^B@@^b', and when ECHO is OFF.
  5653.        (Also see the "@BatchEcho[BatchEcho=]" INI directive).
  5654.  
  5655. ^1EXAMPLES^0
  5656.  
  5657. Change the COMPOUND character to a ~ (tilde):
  5658.  
  5659.     c:\> setdos /c~
  5660.  
  5661. Change MODE to insert, VERBOSE to off, and set NOCLOBBER on:
  5662.  
  5663.     c:\> setdos /m1 /v0 /n1
  5664.  
  5665. Disable the internal LIST command to force 4DOS to use an external command:
  5666.  
  5667.     c:\> setdos /i-list
  5668.  
  5669. SETLOCAL SETLOCAL  (Internal 4DOS)
  5670.  
  5671. ^1SYNTAX^0
  5672.  
  5673.     ^BSETLOCAL^b
  5674.  
  5675. ^1PURPOSE^0
  5676.  
  5677. Save a copy of the current disk drive, directory, and environment variables.
  5678.  
  5679. ^1COMMENTS^0
  5680.  
  5681. SETLOCAL is used in batch files to save the disk drive, directory, and
  5682. environment variables to a reserved block of memory.  You can then change
  5683. their values, and later restore the original values with @ENDLOCAL[ENDLOCAL].  You
  5684. cannot use SETLOCAL in an alias.
  5685.  
  5686. SETLOCAL and ENDLOCAL are ^Bnot^b nestable within the same batch file.
  5687. However, you can have multiple SETLOCAL / ENDLOCAL pairs within a batch
  5688. file, and nested batch files can each have their own SETLOCAL / ENDLOCAL.
  5689. ^B4DOS will automatically perform an ENDLOCAL at the end of a batch file^b.
  5690.  
  5691. Note that if you invoke a batch from another without using @CALL[CALL], the first
  5692. batch file is implicitly terminated, and an automatic ENDLOCAL performed.
  5693. The second batch file will inherit the drive, directory, and environment
  5694. variables as they were prior to the SETLOCAL.
  5695.  
  5696. Do not use TSRs (memory-resident programs) from a batch file while SETLOCAL
  5697. is in effect.  If you do, when ENDLOCAL is executed and the memory used by
  5698. SETLOCAL is released, a "hole" will be left in memory below the TSR.  This
  5699. is not harmful, but wastes memory.
  5700.  
  5701. See also @ENDLOCAL[ENDLOCAL].
  5702.  
  5703. ^1EXAMPLE^0
  5704.  
  5705. This batch file fragment saves the disk drive, directory, and environment
  5706. variables, changes the disk and directory, modifies some variables, runs a
  5707. program, and then restores the original values:
  5708.  
  5709.     setlocal
  5710.     cdd d:\test ^^ set path=c:\;c:\dos;c:\util ^^ set lib=d:\lib
  5711.     rem run some program here
  5712.     endlocal
  5713.  
  5714. SETVER SETVER  (External MS-DOS)
  5715.  
  5716. ^1SYNTAX^0
  5717.  
  5718.     ^BSETVER [d:][path]^b
  5719.     or
  5720.     ^BSETVER [d:][path]filename n.nn^b
  5721.     or
  5722.     ^BSETVER [d:][path]filename [/DELETE / QUIET]^b
  5723.  
  5724. ^1PURPOSE^0
  5725.  
  5726. Set the version number that MS-DOS reports to a program.
  5727.  
  5728. ^1COMMENTS^0
  5729.  
  5730. SETVER will not necessarily allow a program to run under an unknown DOS
  5731. version.  It merely effect the ^Breported^b DOS version, not its behavior.
  5732.  
  5733. SETVER must be defined as a device ("DEVICE=") in CONFIG.SYS to be effective.
  5734. When called from the command line (or batch file) it only allows you to
  5735. maintain its internal version table.  See your DOS manual for details.
  5736.  
  5737. The SETVER options are:
  5738.  
  5739.     ^2/DELETE^0  Delete the version table entry for the specified program.
  5740.     ^2/QUIET^0   Don't display a message when deleting an entry from the
  5741.              version table.
  5742.  
  5743. ^1EXAMPLE^0
  5744.  
  5745. Tell DOS to return version 4.00 to MSCDEX.EXE:
  5746.  
  5747.     c:\> setver c:\cdrom\mscdex.exe 4.00
  5748.  
  5749. SHARE SHARE  (External MS-DOS)
  5750.  
  5751. ^1SYNTAX^0
  5752.  
  5753.     ^BSHARE [/F:filespace] [/L:locks]^b
  5754.  
  5755. ^1PURPOSE^0
  5756.  
  5757. Load support for file sharing and file locking.
  5758.  
  5759. ^1COMMENTS^0
  5760.  
  5761. SHARE is for ^Bnetwork^b users.  To load SHARE automatically under MS-DOS 4.0
  5762. and above, put SHARE.EXE in the root directory of your boot disk, or the
  5763. directory pointed to by your SHELL= command in CONFIG.SYS.
  5764.  
  5765. You can load SHARE manually from the AUTOEXEC.BAT file (or CONFIG.SYS if
  5766. you are running MS-DOS 4.0 or greater), but it usually works better if loaded
  5767. automatically.
  5768.  
  5769. The SHARE options are:
  5770.  
  5771.     ^2/F:filespace^0  Allocate file space for the file sharing information
  5772.        area (default ^B2048^b).  Each open file requires the length of the full
  5773.        filename plus 11 bytes.
  5774.     ^2/L:locks^0  Allocate space for the number of locks (default ^B20^b).
  5775.  
  5776. SHARE is memory-resident, and uses about 6K of RAM in MS-DOS 3.3.
  5777.  
  5778. ^1EXAMPLE^0
  5779.  
  5780. Allocate 4096 bytes for file space and 40 locks:
  5781.  
  5782.     c:\> share /F:4096 /L:40
  5783.  
  5784. SHIFT SHIFT  (Internal 4DOS)
  5785.  
  5786. ^1SYNTAX^0
  5787.  
  5788.     ^BSHIFT [n]^b
  5789.  
  5790. ^1PURPOSE^0
  5791.  
  5792. Allow the use of more than 10 variables in a batch file.
  5793.  
  5794. ^1COMMENTS^0
  5795.  
  5796. SHIFT is provided for compatibility with COMMAND.COM. COMMAND.COM supports
  5797. only 10 parameters (%0 through %9); 4DOS supports ^B128^b (^B%0^b to ^B%127^b), so you
  5798. may not need to use SHIFT for batch files running exclusively under 4DOS.
  5799.  
  5800.  
  5801. SHIFT moves each batch file parameter ^Bn^b positions (i.e., if ^Bn^b is 1, then
  5802. %1 becomes %0, %2 becomes %1, etc.).  The default value for ^Bn^b is 1.  You
  5803. can also reverse a SHIFT by giving a negative value for ^Bn^b (i.e., if ^Bn^b is
  5804. -1, the former value for %0 is restored, %1 becomes %1, %1 becomes %2, etc.).
  5805.  
  5806.  
  5807. SHIFT also affects the ^B%&^b (command line tail) and @#[%#] (number of command
  5808. arguments) batch variables.
  5809.  
  5810. ^1EXAMPLE^0
  5811.  
  5812. Create a batch file called TEST.BAT:
  5813.  
  5814.     echo %1 %2 %3 %4
  5815.     shift
  5816.     echo %1 %2 %3 %4
  5817.     shift 2
  5818.     echo %1 %2 %3 %4
  5819.     shift -1
  5820.     echo %1 %2 %3 %4
  5821.  
  5822. Executing TEST.BAT produces the following results:
  5823.  
  5824.     c:\> test zero one two three four five six
  5825.     zero one two three
  5826.     one two three four
  5827.     three four five six
  5828.     two three four five
  5829.  
  5830. SORT SORT  (External MS-DOS)
  5831.  
  5832. ^1SYNTAX^0
  5833.  
  5834.     ^BSORT [/R] [/+n]^b
  5835.  
  5836. ^1PURPOSE^0
  5837.  
  5838. Read data from standard input, sort it, and write it to standard output.
  5839.  
  5840. ^1COMMENTS^0
  5841.  
  5842. SORT is a filter used to organize information.  The largest file you can
  5843. sort is ^63K^.  SORT ignores case differences.
  5844.  
  5845. The SORT options are:
  5846.  
  5847.     ^2/R^0   Sort in reverse order (Z - A).
  5848.     ^2/+n^0  Start sorting with column ^Bn^b.
  5849.  
  5850. ^1EXAMPLE^0
  5851.  
  5852. Sort the file ADDRESS and write it to SORTED:
  5853.  
  5854.     c:\> sort < address > sorted
  5855.  
  5856. SUBST SUBST  (External MS-DOS)
  5857.  
  5858. ^1SYNTAX^0
  5859.  
  5860.     ^BSUBST^b    or    ^BSUBST d: d:path^b    or    ^BSUBST d: /D^b
  5861.  
  5862. ^1PURPOSE^0
  5863.  
  5864. Substitute a virtual drive for a pathname.
  5865.  
  5866. ^1COMMENTS^0
  5867.  
  5868. If you don't enter any arguments, SUBST will display the current virtual
  5869. drives.
  5870.  
  5871. SUBST is useful for applications that do not recognize paths; it permits the
  5872. use of a drive to represent a path.  When a SUBST is in effect the specified
  5873. path appears as if it were the root directory of the specified drive.
  5874. Lower-level subdirectories appear as lower-level subdirectories on the new
  5875. drive.  This is the inverse of @JOIN[JOIN].
  5876.  
  5877. The only option for SUBST is:
  5878.  
  5879.     ^2/D^0  Delete a substitution
  5880.  
  5881. The first and second drive specifiers must be different; the first drive
  5882. letter cannot be the current default drive; and you cannot reference a
  5883. network drive.  The drive letter being substituted must be less than or
  5884. equal to the letter specified in the LASTDRIVE statement in the CONFIG.SYS
  5885. file (default E:).
  5886.  
  5887. @CD[CD], @MD[MD], and @RD[RD] should be used with care when SUBST is in effect. ASSIGN,
  5888. @BACKUP[BACKUP], @DISKCOMP[DISKCOMP], @DISKCOPY[DISKCOPY], @FDISK[FDISK], @FORMAT[FORMAT], @JOIN[JOIN], @LABEL[LABEL] and @RESTORE[RESTORE] should ^Bnot^b
  5889. be used when SUBST is in effect.
  5890.  
  5891. See also @ASSIGN[ASSIGN] and @JOIN[JOIN].
  5892.  
  5893. ^1EXAMPLE^0
  5894.  
  5895. Create a virtual drive D to access C:\WS\MEMOS\JAN89:
  5896.  
  5897.     c:\> subst d: c:\ws\memos\jan89
  5898.  
  5899. SWAPPING SWAPPING  (Internal 4DOS)
  5900.  
  5901. ^1SYNTAX^0
  5902.  
  5903.     ^BSWAPPING [on | off]^b
  5904.  
  5905. ^1PURPOSE^0
  5906.  
  5907. Display, enable, or disable the 4DOS swapping state.
  5908.  
  5909. ^1COMMENTS^0
  5910.  
  5911. SWAPPING will temporarily disable or enable the swapping of the 4DOS
  5912. transient portion to EMS, XMS, or disk.  If swapping is enabled, 4DOS saves
  5913. its transient portion before executing any external command.  When the
  5914. command finishes, 4DOS performs a checksum on the transient portion, and
  5915. restores it if necessary.  (When swapping to EMS or XMS, 4DOS always
  5916. restores the transient portion.)  When you are running several small
  5917. programs from a batch file and using disk swapping, the swapping can
  5918. sometimes cause a noticeable delay.  Turning SWAPPING OFF can speed up such
  5919. operations, particularly in a lengthy AUTOEXEC.BAT file.
  5920.  
  5921. If SWAPPING is ^BOFF^b, available MS-DOS memory will be reduced by the size
  5922. of the 4DOS transient portion.  Setting SWAPPING OFF does not close the
  5923. disk swap file, or release any reserved EMS or XMS memory.
  5924.  
  5925. (Also see the "@Swapping[Swapping=]" INI directive).
  5926.  
  5927. ^1EXAMPLES^0
  5928.  
  5929. Check the current SWAPPING status:
  5930.  
  5931.     c:\> swapping
  5932.     SWAPPING is ON
  5933.  
  5934. The following batch file fragment disables swapping, runs several programs,
  5935. and then reenables swapping:
  5936.  
  5937.     swapping off
  5938.     c:\util\mouse
  5939.     c:\video\ansi.com
  5940.     cls bright white on blue
  5941.     c:\bin\cache.com
  5942.     swapping on
  5943.  
  5944. SYS SYS  (External MS-DOS)
  5945.  
  5946. ^1SYNTAX^0
  5947.  
  5948.     ^BSYS d:^b
  5949.  
  5950. ^1PURPOSE^0
  5951.  
  5952. Copy the two @ATTRIB%hidden[hidden] operating system files to another drive.
  5953.  
  5954. ^1COMMENTS^0
  5955.  
  5956. Not all versions of SYS will transfer COMMAND.COM.  The target disk must be
  5957. @FORMAT[formatted] and blank, or be a bootable MS-DOS disk.
  5958.  
  5959. See also @FORMAT[FORMAT].
  5960.  
  5961. ^1EXAMPLE^0
  5962.  
  5963. Copy the system files to drive A:
  5964.  
  5965.     c:\> sys a:
  5966.  
  5967. TEE TEE  (Internal 4DOS)
  5968.  
  5969. ^1SYNTAX^0
  5970.  
  5971.     ^BTEE [/A] [d:][path]filename...^b
  5972.  
  5973. ^1PURPOSE^0
  5974.  
  5975. Copy standard input to standard output, and save a copy in the specified
  5976. file(s).
  5977.  
  5978. ^1COMMENTS^0
  5979.  
  5980. The only option for TEE is:
  5981.  
  5982.     ^2/A^0  Append output to the file(s) rather than overwriting it.
  5983.  
  5984. If you are typing at the keyboard, enter a ^B^^Z^b to terminate the input.
  5985.  
  5986. TEE is often used to save the intermediate output of a @REDIRECTION[pipe].
  5987.  
  5988.  
  5989. See also @Y[Y].
  5990.  
  5991. ^1EXAMPLE^0
  5992.  
  5993. Search the file DOC for any lines containing the string "4DOS", make a copy
  5994. of the matching lines in 4.DAT, and write them to the output file 4DOS.DAT:
  5995.  
  5996.     c:\> find "4DOS" doc | tee 4.dat | sort > 4dos.dat
  5997.  
  5998. TEXT TEXT  (Internal 4DOS)
  5999.  
  6000. ^1SYNTAX^0
  6001.  
  6002.     ^BTEXT^b
  6003.       ^B.^b
  6004.       ^B.^b
  6005.       ^B.^b
  6006.     ^BENDTEXT^b
  6007.  
  6008. ^1PURPOSE^0
  6009.  
  6010. Display a block of text in a batch file.
  6011.  
  6012. ^1COMMENTS^0
  6013.  
  6014. The TEXT command is useful for displaying menus or multiple-line messages.
  6015. TEXT will display subsequent lines in the text until terminated by ENDTEXT.
  6016. Both TEXT and ENDTEXT must be entered as the only command on that line.
  6017.  
  6018. If you have ANSI.SYS loaded, you can change screen colors by inserting @ANSI[ANSI]
  6019. escape sequences into the text block.
  6020.  
  6021. See also @ECHO[ECHO], @SCREEN[SCREEN], @SCRPUT[SCRPUT], and @VSCRPUT[VSCRPUT].
  6022.  
  6023. ^1EXAMPLE^0
  6024.  
  6025. The following batch file fragment displays a simple menu:
  6026.  
  6027.      @@echo off ^^ cls ^^ screen 2 0
  6028.      text
  6029.      Enter one of the following:
  6030.  
  6031.         1 - Spreadsheet
  6032.         2 - Word Processing
  6033.         3 - DOS Utilities
  6034.  
  6035.         Enter your selection:
  6036.      endtext
  6037.  
  6038. TIME TIME (Internal 4DOS)
  6039.  
  6040. ^1SYNTAX^0
  6041.  
  6042.     ^BTIME [hh:mm:ss]^b
  6043.  
  6044. ^1PURPOSE^0
  6045.  
  6046. Display or set the current system time.
  6047.  
  6048. ^1COMMENTS^0
  6049.  
  6050. If you don't enter any parameters, TIME will display the current system
  6051. time and prompt you for a new time.  Press ENTER if you don't wish to
  6052. change the time, otherwise enter the new time.
  6053.  
  6054. The parameters for the TIME command are:
  6055.  
  6056.     ^2hh^0  Hour (^B0^b - ^B23^b)
  6057.     ^2mm^0  Minute (^B0^b - ^B59^b)
  6058.     ^2ss^0  Second (^B0^b - ^B59^b)
  6059.  
  6060. TIME defaults to 24-hour format; you can optionally enter the time in
  6061. 12-hour format by appending an "^Bam^b" or "^Bpm^b".
  6062.  
  6063. Whenever you create or modify a file, the system time is recorded in the
  6064. directory entry.
  6065.  
  6066. See also @_TIME[%_TIME], @CHCP[CHCP], @DATE[DATE], and @TIMER[TIMER].
  6067.  
  6068. ^1EXAMPLES^0
  6069.  
  6070. Enter the time (9:30 am):
  6071.  
  6072.     c:\> time 9:30
  6073.  
  6074. To be prompted for the time:
  6075.  
  6076.     c:\> time
  6077.     Mon Dec 25, 1989  9:30:10
  6078.     New time (hh:mm:ss):
  6079.  
  6080. TIMER TIMER  (Internal 4DOS)
  6081.  
  6082. ^1SYNTAX^0
  6083.  
  6084.     ^BTIMER [/1 /2 /3 /S] [ON]^b
  6085.  
  6086. ^1PURPOSE^0
  6087.  
  6088. System stopwatch.
  6089.  
  6090. ^1COMMENTS^0
  6091.  
  6092. The TIMER command turns the 4DOS stopwatch on and off.  The first time you
  6093. run TIMER, the stopwatch starts.  When you run TIMER again, the stopwatch
  6094. stops and the elapsed time is displayed.  There are three timers available
  6095. (1, 2, and 3), so you can time multiple overlapping events.  The default
  6096. timer is #^B1^b.
  6097.  
  6098. The options for TIMER are:
  6099.  
  6100.     ^2ON^0  Force the timer to restart
  6101.     ^2/1^0  Use timer #^B1^b
  6102.     ^2/2^0  Use timer #^B2^b
  6103.     ^2/3^0  Use timer #^B3^b
  6104.     ^2/S^0  Display split time without stopping the timer
  6105.  
  6106. TIMER is particularly useful for timing events in batch files.
  6107.  
  6108. The smallest interval TIMER can measure ^B0.06^b seconds; the largest interval
  6109. is ^B23:59:59.99^b.
  6110.  
  6111. See also @TIME[TIME].
  6112.  
  6113. ^1EXAMPLE^0
  6114.  
  6115. Start the timer:
  6116.  
  6117.     c:\> timer
  6118.     Timer on:  12:21:46
  6119.  
  6120. Display a split time:
  6121.  
  6122.     c:\> timer /s
  6123.     Elapsed time:  0:00:06.19
  6124.  
  6125. Stop the timer:
  6126.  
  6127.     c:\> timer
  6128.     Timer off:  12:21:58   Elapsed time 0:00:12.06
  6129.  
  6130. TREE TREE  (External MS-DOS)
  6131.  
  6132. ^1SYNTAX^0
  6133.  
  6134.     ^BTREE [d:] [/A /F]^b
  6135.  
  6136. ^1PURPOSE^0
  6137.  
  6138. Display the directory and file structure.
  6139.  
  6140. ^1COMMENTS^0
  6141.  
  6142. The options for TREE are:
  6143.  
  6144.     ^B/A^b  (DOS 5+ only) Use text characters rather than graphics characters
  6145.         to show the lines linking subdirectories.
  6146.     ^B/F^b  Display the names and specifications of all files on the disk.
  6147.  
  6148. See also @DIR[DIR].
  6149.  
  6150. ^1EXAMPLE^0
  6151.  
  6152. Display the names of the files in all directories on the current drive:
  6153.  
  6154.     c:\> tree /f
  6155.  
  6156. TRUENAME TRUENAME  (Internal 4DOS)
  6157.  
  6158. ^1SYNTAX^0
  6159.  
  6160.     ^BTRUENAME [d:][path]filename^b
  6161.  
  6162. ^1PURPOSE^0
  6163.  
  6164. Returns a fully qualified filename.
  6165.  
  6166. ^1COMMENTS^0
  6167.  
  6168. TRUENAME will see "through" @JOIN[JOIN] and @SUBST[SUBST] commands, and requires MS-DOS 3.0
  6169. or above.
  6170.  
  6171. ^1EXAMPLE^0
  6172.  
  6173. The following command uses TRUENAME to get the true pathname for a file:
  6174.  
  6175.     c:\> subst d: c:\util\test
  6176.     c:\> truename d:\test.exe
  6177.     c:\util\test\test.exe
  6178.  
  6179. TYPE TYPE  (Internal 4DOS)
  6180.  
  6181. ^1SYNTAX^0
  6182.  
  6183.     ^BTYPE [/L /P] [d:][pathname]filename...^b
  6184.  
  6185. ^1PURPOSE^0
  6186.  
  6187. Display the contents of the specified file(s).
  6188.  
  6189. ^1COMMENTS^0
  6190.  
  6191. The TYPE command displays a file.  Press ^B^S^b to suspend the display, and
  6192. any character key to continue the display.
  6193.  
  6194. The TYPE options are:
  6195.  
  6196.     ^2/L^0  Print line numbers preceding each line of text.
  6197.     ^2/P^0  Pause after each page.  Press ^B^^C^b to quit, or any other key to
  6198.         display the next page.
  6199.  
  6200. TYPE is normally only useful for displaying ASCII text files; executable
  6201. files (.COM and .EXE) and many data files will be unreadable due to the
  6202. presence of non-alphanumeric characters.
  6203.  
  6204. You will probably find @LIST[LIST] to be more useful for displaying files.
  6205.  
  6206. See also @LIST[LIST].
  6207.  
  6208. ^1EXAMPLE^0
  6209.  
  6210. Display the files MEMO1 and MEMO2, pausing at the end of each page:
  6211.  
  6212.     c:\> type /p memo1 memo2
  6213.  
  6214. UNALIAS UNALIAS  (Internal 4DOS)
  6215.  
  6216. ^1SYNTAX^0
  6217.  
  6218.     ^BUNALIAS alias...^b    or    ^BUNALIAS *^b
  6219.  
  6220. ^1PURPOSE^0
  6221.  
  6222. Remove @ALIAS[aliases] from the alias list.
  6223.  
  6224. ^1COMMENTS^0
  6225.  
  6226. UNALIAS also accepts the wildcard character ^B*^b to delete all aliases.
  6227.  
  6228. See also @ALIAS[ALIAS], @ESET%/A[ESET], and @SETLOCAL[SETLOCAL].
  6229.  
  6230. ^1EXAMPLES^0
  6231.  
  6232. Remove the alias DDIR:
  6233.  
  6234.     c:\> unalias ddir
  6235.  
  6236. Remove the aliases DDIR and ZAP:
  6237.  
  6238.     c:\> unalias ddir zap
  6239.  
  6240. Remove all the aliases:
  6241.  
  6242.     c:\> unalias *
  6243.  
  6244. UNDELETE UNDELETE  (External MS-DOS)
  6245.  
  6246. ^1SYNTAX^0
  6247.  
  6248.     ^BUNDELETE [[d:][path]filename] [/ALL /LIST /DOS /DT]^b
  6249.  
  6250. ^1PURPOSE^0
  6251.  
  6252. Restore files deleted with the @DEL[DEL] command.
  6253.  
  6254. ^1COMMENTS^0
  6255.  
  6256. The UNDELETE options are:
  6257.  
  6258.     ^2/ALL^0   Recover deleted files without prompting for confirmation, using
  6259.            the deletion-tracking file if present.
  6260.     ^2/LIST^0  List the deleted files, but do not recover them.
  6261.     ^2/DOS^0   Recover only those files internally listed as deleted by MS-DOS,
  6262.            prompting for confirmation on each file.  The ^B/DOS^b switch will
  6263.            ignore a deletion-tracking file.
  6264.     ^2/DT^0    Recover only those files listed in the deletion-tracking file
  6265.            produced by @MIRROR[MIRROR], prompting for confirmation on each file.
  6266.  
  6267. If you don't specify any options, UNDELETE will use the deletion-tracking
  6268. file (if found).
  6269.  
  6270. See also @MIRROR[MIRROR] and @UNFORMAT[UNFORMAT].
  6271.  
  6272. ^1EXAMPLE^0
  6273.  
  6274. Undelete all .COM files in the current directory, using the MIRROR
  6275. deletion-tracking file, and prompting for confirmation for each file:
  6276.  
  6277.     c;\> undelete *.com /dt
  6278.  
  6279. UNFORMAT UNFORMAT  (External MS-DOS)
  6280.  
  6281. ^1SYNTAX^0
  6282.  
  6283.     ^BUNFORMAT d: [/J]^b    or    ^BUNFORMAT d: [/L /P /PARTN /TEST /U]^b
  6284.  
  6285. ^1PURPOSE^0
  6286.  
  6287. Attempts to restores a disk erased by the @FORMAT[FORMAT] command or corrupted by
  6288. the @RECOVER[RECOVER] command, using the file created by @MIRROR[MIRROR], if available.
  6289.  
  6290. ^1COMMENTS^0
  6291.  
  6292. The UNFORMAT options are:
  6293.  
  6294.     ^2/J^0  Tests to see if the file created by @MIRROR[MIRROR] matches the system
  6295.         information on the disk.
  6296.     ^2/L^0  When used without the ^B/PARTN^b option, lists every subdirectory and
  6297.         file found on drive ^Bd:^b.  Without the ^B/L^b, UNFORMAT will only list
  6298.         subdirectories and files that are fragmented.  When used with the
  6299.         ^B/PARTN^b option, displays the partition table of the current drive.
  6300.     ^2/P^0  Send output messages to LPT1.
  6301.     ^2/PARTN^0  Restore a corrupted partition table.  Requires a PARTNSAV.FIL
  6302.         created using @MIRROR%/PARTN[MIRROR's /PARTN] option.
  6303.     ^2/TEST^0  Shows how UNFORMAT would unformat the disk, but does not
  6304.         do the unformatting.
  6305.     ^2/U^0  Unformat a disk without using the mirror file.
  6306.  
  6307. See also @MIRROR[MIRROR] and @UNDELETE[UNDELETE].
  6308.  
  6309. ^1EXAMPLE^0
  6310.  
  6311. Restore drive D: using a MIRROR file:
  6312.  
  6313.     c:\> unformat d:
  6314.  
  6315. UNSET UNSET  (Internal 4DOS)
  6316.  
  6317. ^1SYNTAX^0
  6318.  
  6319.     ^BUNSET name...^b    or    ^BUNSET [/M] *^b
  6320.  
  6321. ^1PURPOSE^0
  6322.  
  6323. Remove @VARIABLES[variables] from the environment.
  6324.  
  6325. ^1COMMENTS^0
  6326.  
  6327. The only option for UNSET is:
  6328.  
  6329.     ^2/M^0  Remove the environment variable from the master environment
  6330.         rather than the local environment.
  6331.  
  6332. UNSET also accepts the wildcard character * to delete all environment
  6333. variables.  Use caution with ^BUNSET *^b; many programs are dependent on
  6334. environment variables.  (4DOS uses @÷PATH[%PATH], @COMSPEC[%COMSPEC], @TEMP[%TEMP], etc.)
  6335.  
  6336. UNSET is often used in conjunction with @SETLOCAL[SETLOCAL]/@ENDLOCAL[ENDLOCAL] in order to
  6337. clear the environment of variables that may cause problems for some
  6338. applications.
  6339.  
  6340. See also @ESET[ESET], @SET[SET] and @SETLOCAL[SETLOCAL].
  6341.  
  6342. ^1EXAMPLES^0
  6343.  
  6344. Remove the variable CMDLINE:
  6345.  
  6346.     c:\> unset cmdline
  6347.  
  6348. Remove the variables CMDLINE and PATH:
  6349.  
  6350.     c:\> unset cmdline path
  6351.  
  6352. Remove all the environment variables:
  6353.  
  6354.     c:\> unalias *
  6355.  
  6356. VER VER  (Internal 4DOS)
  6357.  
  6358. ^1SYNTAX^0
  6359.  
  6360.     ^BVER [/R]^b
  6361.  
  6362. ^1PURPOSE^0
  6363.  
  6364. Display the current 4DOS and MS-DOS versions.
  6365.  
  6366. ^1COMMENTS^0
  6367.  
  6368. The 4DOS and MS-DOS versions consist of a one digit major version number,
  6369. a period, and a one- or two-digit minor version number.
  6370.  
  6371. The only option for VER is:
  6372.  
  6373.     ^2/R^0  Displays the 4DOS revision level and, for DOS 5+ only, the DOS
  6374.         revision level and whether DOS is loaded in low memory, the HMA, or
  6375.         in ROM.
  6376.  
  6377. ^1EXAMPLE^0
  6378.  
  6379. Get the current version of 4DOS and MS-DOS:
  6380.  
  6381.     c:\> ver
  6382.     4DOS 4.0  DOS 5.0
  6383.  
  6384. VERIFY VERIFY  (Internal 4DOS)
  6385.  
  6386. ^1SYNTAX^0
  6387.  
  6388.     ^BVERIFY [on | off]^b
  6389.  
  6390. ^1PURPOSE^0
  6391.  
  6392. Display, enable, or disable disk write verification.
  6393.  
  6394. ^1COMMENTS^0
  6395.  
  6396. When VERIFY is ^BON^b, MS-DOS will verify that no error occurred during each
  6397. disk write operation.  It does NOT compare the data actually written to
  6398. the disk.  VERIFY will remain ON until you set it OFF.
  6399.  
  6400. Entering VERIFY with no parameters will display the current VERIFY state.
  6401.  
  6402.  
  6403. Verification will slow your disk write operations slightly.
  6404.  
  6405. At system startup, VERIFY is ^BOFF^b.
  6406.  
  6407. ^1EXAMPLES^0
  6408.  
  6409. Check the current verify status:
  6410.  
  6411.     c:\> verify
  6412.     VERIFY is OFF
  6413.  
  6414. Enable disk write verification:
  6415.  
  6416.     c:\> verify on
  6417.  
  6418. VOL VOL  (Internal 4DOS)
  6419.  
  6420. ^1SYNTAX^0
  6421.  
  6422.     ^BVOL [d:] ...^b
  6423.  
  6424. ^1PURPOSE^0
  6425.  
  6426. Display the disk volume label(s).
  6427.  
  6428. ^1COMMENTS^0
  6429.  
  6430. If you don't enter a drive name, VOL displays the disk label for the current
  6431. drive.  If you are running MS-DOS 4.0 or above, VOL will also display the
  6432. volume serial number.
  6433.  
  6434. If the disk doesn't have a volume name, VOL will report it as "^Bunlabeled^b."
  6435.  
  6436. Volume labels can be created, changed or deleted with the @LABEL[LABEL] command.
  6437.  
  6438. See also @DISKCOPY[DISKCOPY] and @LABEL[LABEL].
  6439.  
  6440. ^1EXAMPLE^0
  6441.  
  6442. Display the disk labels for drives A and B:
  6443.  
  6444.     c:\> vol a: b:
  6445.     Volume in drive A: is unlabeled
  6446.     Volume in drive B: is BACKUP_2
  6447.  
  6448. VSCRPUT VSCRPUT  (Internal 4DOS)
  6449.  
  6450. ^1SYNTAX^0
  6451.  
  6452.     ^BVSCRPUT row column [bright] [blink] fg ON bg text^b
  6453.  
  6454. ^1PURPOSE^0
  6455.  
  6456. Display text in color in a vertical column.
  6457.  
  6458. ^1COMMENTS^0
  6459.  
  6460. The row and column are zero-based, so on a standard 25 row by 80 column
  6461. display, valid rows are 0 - 24 and valid columns are 0 - 79.
  6462.  
  6463. VSCRPUT works like @SCRPUT[SCRPUT], but writes the text vertically.
  6464.  
  6465. The parameters are:
  6466.  
  6467.  
  6468.     ^2row^0     Start row
  6469.     ^2column^0  Start column
  6470.     ^2fg^0      Foreground character color
  6471.     ^2bg^0      Background character color
  6472.     ^2text^0    The text to display
  6473.  
  6474. VSCRPUT uses the standard @COLORS[4DOS color attributes] and names.
  6475.  
  6476. See also @ECHO[ECHO], @SCREEN[SCREEN], @SCRPUT[SCRPUT], and @TEXT[TEXT].
  6477.  
  6478. ^1EXAMPLE^0
  6479.  
  6480. The following batch file fragment displays an X and Y axis and labels them:
  6481.  
  6482.     drawhline 20 10 40 1 bright white on blue
  6483.     drawvline 2 10 18 1 bright white on blue
  6484.     scrput 21 20 bright red on blue X axis
  6485.     vcrput 8 9 bright red on blue Y axis
  6486.  
  6487. XCOPY XCOPY  (External MS-DOS)
  6488.  
  6489. ^1SYNTAX^0
  6490.  
  6491.  ^BXCOPY [d:][path]filename [d:][path]filename [/A /D:date /E /M /P /S /V /W]^b
  6492.  
  6493. ^1PURPOSE^0
  6494.  
  6495. Copy files and directories, including subdirectories.
  6496.  
  6497. ^1COMMENTS^0
  6498.  
  6499. The first argument is the source file or directory you want to copy.  The
  6500. second argument is the target.  If you omit the target, XCOPY uses the
  6501. default directory with the default filename ^B*.*^b.
  6502.  
  6503. The XCOPY options are:
  6504.  
  6505.     ^2/A^0  Copy source files that have the archive bit set.  This option
  6506.         does not modify the archive bit.
  6507.     ^2/D^0  Copy source files modified on or after the specified date (the
  6508.         date format depends on the current country setting).
  6509.     ^2/E^0  Copy any subdirectories, even if they are empty.  Using this
  6510.         option without the ^B/S^b option will cause an error.
  6511.     ^2/M^0  Same as ^B/A^b, but after copying a file, turn off the archive bit
  6512.         in the source file.
  6513.     ^2/P^0  Prompt with a "^BY/N^b" before creating each target file.
  6514.     ^2/S^0  Copy subdirectories, unless they are empty.
  6515.     ^2/V^0  Verify each disk write.  This is the same as executing the @VERIFY[VERIFY]
  6516.         ON command, but is only active while XCOPY is running.
  6517.     ^2/W^0  Wait for a keystroke before copying files.
  6518.  
  6519. XCOPY may not work correctly if it is used while an @APPEND%/X[APPEND /X] is in effect.
  6520.  
  6521. The 4DOS description file created by @DESCRIBE[DESCRIBE] is ^BNOT^b updated by XCOPY.
  6522.  
  6523. See Also @BACKUP[BACKUP], @COPY[COPY], and @MOVE[MOVE].
  6524.  
  6525. ^1EXAMPLES^0
  6526.  
  6527. Copy all of the files from drive D to drive C:
  6528.  
  6529.     c:\> xcopy d:\ c:\ /s
  6530.  
  6531. Copy all of the files in the WS directory on drive C that were modified on
  6532. or after January 1, 1989 to drive A:
  6533.  
  6534.     c:\> xcopy c:\ws a:\ /d:1-1-89
  6535.  
  6536. Y Y  (Internal 4DOS)
  6537.  
  6538. ^1SYNTAX^0
  6539.  
  6540.     ^BY [d:][path]filename...^b
  6541.  
  6542. ^1PURPOSE^0
  6543.  
  6544. Copy standard input to standard output, and then copy the specified file(s)
  6545. to standard output.
  6546.  
  6547. ^1COMMENTS^0
  6548.  
  6549. Standard input from the console is terminated by a ^B^^Z^b.
  6550.  
  6551. See also @TEE[TEE].
  6552.  
  6553. ^1EXAMPLE^0
  6554.  
  6555. Get text from standard input, append the files MEMO1 and MEMO2 to it, and
  6556. send the output to MEMOS:
  6557.  
  6558.     c:\> y memo1 memo2 > memos
  6559.  
  6560. GLOSSARY Glossary (in alphabetical order)
  6561.  
  6562. ^B4EXIT.BAT:^b A batch file (.BAT or .BTM) which is automatically executed
  6563. by a 4DOS secondary shell as part of its EXIT process when it terminates
  6564. normally.
  6565.  
  6566. ^B4START.BAT:^b A batch file (.BAT or .BTM) which is automatically executed
  6567. by any 4DOS shell as part of its startup procedure.  4START is exected before
  6568. AUTOEXEC by the primary shell.
  6569.  
  6570. ^BArgument:^b A piece of additional information placed after a command or
  6571. function name. For example in the command DIR XYZ, XYZ is an argument. Also
  6572. used to refer to an alias argument or batch file argument.
  6573.  
  6574. ^BASCII:^b The American Standard Code for Information Interchange, which
  6575. defines numeric values for 128 different characters comprising the English
  6576. alphabet, numbers, punctuation, and some control characters.
  6577.  
  6578. ^BASCII File:^b A file containing ASCII text, as opposed to a binary file
  6579. which may contain codes, numbers, or other information that cannot be
  6580. sensibly interpreted as text.
  6581.  
  6582. ^BAttribute:^b A characteristic of a file which can be set or cleared.  The
  6583. standard attributes are Read-Only, Hidden, System, and Archive.  The
  6584. special attributes Volume Label and Directory are also used for files of
  6585. those types.
  6586.  
  6587. ^BAUTOEXEC.BAT:^b A batch file which is AUTOmatically EXECuted when the
  6588. computer is started.
  6589.  
  6590. ^BAutomatic Directory Change:^b A 4DOS feature which allows changing
  6591. directories by typing the directory name and a backslash [\] at the prompt.
  6592.  
  6593. ^BBase Memory:^b The portion of your computer's memory available for use by
  6594. DOS, the command processor, and application programs. On most PCs this area
  6595. consists of the first 640K bytes of the computer's memory (one K is 1024
  6596. bytes).
  6597.  
  6598. ^BBAT File:^b Same as a Batch File.
  6599.  
  6600. ^BBatch File:^b A text file containing a sequence of DOS or 4DOS commands.
  6601. Batch files are used to save command sequences so that they can be
  6602. re-executed at any time, transferred to another system, etc.
  6603.  
  6604. ^BBatch File Argument:^b A numeric variable used within a batch file,
  6605. allowing a different value to be used at that spot in the file each time it
  6606. is executed.
  6607.  
  6608. ^BBinary File:^b A file containing information which does not represent or
  6609. cannot sensibly be interpreted as text. See also ASCII File.
  6610.  
  6611. ^BBlock Device:^b A physical device for input or output which can transmit
  6612. or receive large blocks of data while the computer is engaged in other
  6613. activities.  Examples include disk, tape, and CD-ROM drives, and many
  6614. networks.
  6615.  
  6616. ^BBoot:^b The process of starting the computer and loading DOS and the
  6617. command processor into memory.
  6618.  
  6619. ^BBoot Directory:^b The current directory at the time the system is booted,
  6620. almost always the root directory of the boot drive.
  6621.  
  6622. ^BBoot Drive:^b The disk drive that the system is booted from, usually A:
  6623. (the floppy disk) or C: (the hard disk).
  6624.  
  6625. ^BBreak:^b A signal sent to a program (including 4DOS) to tell it to halt
  6626. what it is doing. The Ctrl-C key or Ctrl-Break key is used to send this
  6627. signal.  Some external commands abort when they receive a break signal;
  6628. others return to a previous screen or menu, or abort the current operation.
  6629.  
  6630. ^BBTM File:^b A special type of batch file which is loaded into memory,
  6631. dramatically speeding up execution.
  6632.  
  6633. ^BBuffer:^b An area of memory set aside for storage.  Usually refers to
  6634. disk buffers, used to save information as it is transferred between your
  6635. program and the disk; or to the keyboard buffer, which holds keystrokes
  6636. until a program can use them.
  6637.  
  6638. ^BCharacter Device:^b A physical device for input or output which must
  6639. communicate with your computer one character at a time. Examples include
  6640. the console, communications ports, and printers.
  6641.  
  6642. ^BCode Page:^b A set of definitions which tells DOS how to get and display
  6643. date, time, and other information in the format appropriate to a particular
  6644. country.
  6645.  
  6646. ^BCommand Completion:^b A 4DOS feature which allows you to recall a
  6647. previous command by typing the first few letters of the command, then an
  6648. up-arrow or down-arrow.
  6649.  
  6650. ^BCommand Echoing:^b A feature which displays commands as they are
  6651. executed. Echoing can be turned on and off.
  6652.  
  6653. ^BCommand History:^b A 4DOS feature which retains commands you have
  6654. previously executed, so that they can be modified and re- executed later.
  6655.  
  6656. ^BCommand Interpreter:^b A program, such as 4DOS or COMMAND.COM, which
  6657. interprets commands and executes other programs.
  6658.  
  6659. ^BCommand Recall:^b See Command History.
  6660.  
  6661. ^BCommand Tail:^b The portion of a command consisting of all the arguments,
  6662. i.e. everything but the command name itself.
  6663.  
  6664. ^BCompound Command:^b See Multiple Commands.
  6665.  
  6666. ^BCOMSPEC:^b An environment variable which defines where to get the command
  6667. processor for a secondary shell.
  6668.  
  6669. ^BConditional Commands:^b A 4DOS feature allowing commands to be executed
  6670. or skipped depending on the results of a previous command. See also Exit
  6671. Code.
  6672.  
  6673. ^BCONFIG.SYS:^b A file which tells DOS what device drivers to install, what
  6674. command processor to use, and other information about what to do when your
  6675. system boots. See your DOS manual for more information.
  6676.  
  6677. ^BConsole:^b The PC keyboard and display.
  6678.  
  6679. ^BControl Character:^b A character which is part of the ASCII code, but
  6680. does not have a normal text representation, and which can be generated by
  6681. pressing the Ctrl key along with another key. For example the control
  6682. character called "BEL" is generated by pressing Ctrl-G, and will cause the
  6683. computer to beep if pressed at the DOS prompt.
  6684.  
  6685. ^BCountry Code:^b See Code Page.
  6686.  
  6687. ^BCR:^b The ASCII character "carriage return", generated by pressing the
  6688. "Enter" key on the keyboard, and stored in most ASCII files at the end of
  6689. each line.
  6690.  
  6691. ^BCritical Error:^b An error, usually related to input, output, or network
  6692. access, which prevents a program from continuing. When a critical error
  6693. occurs, a prompt such as "R(etry), I(gnore), F(ail), or A(bort)" appears on
  6694. the screen and you must decide what action to take.
  6695.  
  6696. ^BCurrent Directory:^b The directory in which all file operations will take
  6697. place unless otherwise specified. For example if the current directory is
  6698. C:\MYFILES then the command "DEL XYZ" will delete the file XYZ in the
  6699. directory C:\MYFILES, and will not affect other files with the same name
  6700. which may be in other directories.
  6701.  
  6702. ^BDescription:^b A string of characters assigned to describe a file with
  6703. the 4DOS DESCRIBE command.
  6704.  
  6705. ^BDestination:^b In the 4DOS file commands (COPY, MOVE, and RENAME), the
  6706. name or directory files should have after any copying or modification has
  6707. taken place; generally referred to by the last specification on the command
  6708. line. See also Source.
  6709.  
  6710. ^BDevice:^b A physical device for input or output such as the console, a
  6711. communications port, or a printer. Sometimes the term "device" alone is
  6712. used to refer to character devices such as those listed above, and excludes
  6713. block devices.
  6714.  
  6715. ^BDevice Driver:^b A program which allows DOS to communicate with a device,
  6716. and which is loaded into memory when the system is booted, via a statement
  6717. in CONFIG.SYS. Some device drivers are used to manage memory or for other
  6718. similar internal functions, rather than to communicate with an external
  6719. device.
  6720.  
  6721. ^BDirectory:^b A portion of any disk, identified by a name and a
  6722. relationship to other directories in a "tree" structure, with the tree
  6723. starting at the root directory. A directory separates files on the disk
  6724. into logical groups, but does not represent a physical division of the data
  6725. on the disk.
  6726.  
  6727. ^BDisk Swapping:^b A type of swapping in which the transient portion of
  6728. 4DOS is stored on disk while an application is running.
  6729.  
  6730. ^BDOS Memory:^b See Base Memory.
  6731.  
  6732. ^BEcho:^b See Command Echoing.
  6733.  
  6734. ^BEMS Memory:^b Memory which conforms to the Lotus - Intel - Microsoft
  6735. Expanded Memory Specification (LIM EMS). This hardware/software standard
  6736. allows programs to access large amounts of memory outside of base memory or
  6737. extended memory. Most systems which have EMS memory have either a specific
  6738. EMS board (on any PC or compatible system), EMS emulation software (on
  6739. PC-AT compatible systems), or a 386 control program such as QEMM or 386MAX
  6740. (on 386 systems). If you do not have one of these items, you probably do
  6741. not have EMS memory.
  6742.  
  6743. ^BEMS Swapping:^b A type of swapping in which the transient portion of 4DOS
  6744. is stored in EMS memory while an application is running.
  6745.  
  6746. ^BEnvironment:^b An area of memory which contains multiple entries in the
  6747. form "NAME=value". Each entry is called an environment variable. See also
  6748. Master Environment and Passed Environment.
  6749.  
  6750. ^BEnvironment Variable:^b The name of a single entry in the environment.
  6751. Environment variables are entered with the SET command, and used to
  6752. associate the specified value with the specified name for any purpose
  6753. desired by the user. Typically, their function is to set default switches
  6754. for a program, specify a directory path where files can be found, and so
  6755. on. When 4DOS encounters an environment variable name in a command in the
  6756. form "%NAME" (or "%NAME%"), it substitutes the corresponding value in its
  6757. place.
  6758.  
  6759. ^BErrorlevel:^b A numeric value between 0 and 255 returned from an external
  6760. command to indicate its result (e.g., success, failure, response to a
  6761. question), and accessible via the IF ERRORLEVEL command and the %?
  6762. environment variable. See also Exit Code.
  6763.  
  6764. ^BEscape Character:^b This term has two meanings. In some contexts it means
  6765. the 4DOS escape character, normally Ctrl-X, which is used to suppress the
  6766. normal meaning of or give special meaning to the following character. In
  6767. other cases it refers to the specific ASCII character ESC. The meaning must
  6768. be determined from the context.
  6769.  
  6770. ^BExecutable Extensions:^b A 4DOS feature which allows you to specify the
  6771. application to be executed when a file with a particular extension is named
  6772. at the command prompt.
  6773.  
  6774. ^BExecutable File:^b A file with the extension .COM or .EXE, which can be
  6775. loaded into memory and run as a program.
  6776.  
  6777. ^BExit Code:^b The error level returned by an external command, or a
  6778. similar exit code returned by a 4DOS internal command. 4DOS internal
  6779. commands return an exit code of 0 if successful, or non-zero if
  6780. unsuccessful. See also Errorlevel.
  6781.  
  6782. ^BExpansion:^b The process 4DOS goes through when it scans a command line
  6783. and substitutes the appropriate actual values for aliases, alias arguments,
  6784. batch file arguments, and environment variables. See also Parsing.
  6785.  
  6786. ^BExtended ASCII Character:^b A character which is not part of the standard
  6787. set of 128 ASCII characters, but is used on the PC as part of an extended
  6788. set of 256 characters. These characters include international language
  6789. symbols, and box and line drawing characters.
  6790.  
  6791. ^BExtended Memory:^b Any memory on a 286-based (PC-AT compatible) or
  6792. 386-based computer system which is above the 1 MB (one megabyte, or
  6793. 1024*1024 bytes) of memory that DOS can address directly. Any PC-AT
  6794. compatible or 386 system with more than 640K of memory has extended memory.
  6795. This memory can be used for a variety of purposes depending on the software
  6796. installed to utilize it. See also XMS.
  6797.  
  6798. ^BExternal Command:^b A program which resides in an executable file, as
  6799. opposed to an internal command which is part of the command processor. For
  6800. example, FORMAT and DISKCOPY are external commands; you can find them on
  6801. your DOS disk under the names FORMAT.COM and DISKCOPY.COM.
  6802.  
  6803. ^BFile Attribute:^b See Attribute.
  6804.  
  6805. ^BFile Description:^b See Description.
  6806.  
  6807. ^BFilename Completion:^b A 4DOS feature which allows you to type part of a
  6808. filename on the command line, and have 4DOS fill in the rest for you.
  6809.  
  6810. ^BFree Memory:^b Usually, the amount of base memory which is currently
  6811. unoccupied and available for use by applications.
  6812.  
  6813. ^BHidden:^b A file attribute indicating that the file should not be
  6814. displayed with a normal DIR command, and should not be available for access
  6815. by programs unless they specifically request use of hidden files.
  6816.  
  6817. ^BHistory:^b See Command History.
  6818.  
  6819. ^BHistory Window:^b A pop-up window used by 4DOS to display the command
  6820. history, allowing you to choose a previous command to modify and / or
  6821. execute.
  6822.  
  6823. ^BInclude List:^b A concise method of specifying several files or groups of
  6824. files in the same directory, for use with all 4DOS commands which take file
  6825. names as arguments.
  6826.  
  6827. ^BInsert Mode:^b When editing text, a mode in which newly typed characters
  6828. are inserted into the line at the cursor position, rather than overwriting
  6829. existing characters on the line. See also Overstrike Mode.
  6830.  
  6831. ^BInternal Command:^b A command which is part of the command processor, as
  6832. opposed to an external command. For example, DIR and COPY are internal
  6833. commands.
  6834.  
  6835. ^BKeyboard Buffer:^b A buffer which holds keystrokes you have typed that
  6836. have not yet been used by the currently executing program.
  6837.  
  6838. ^BKeystroke Alias:^b An alias assigned to a key, so that it can be invoked
  6839. or recalled with a single keystroke.
  6840.  
  6841. ^BLabel:^b A marker in a batch file. Labels allow GOTO and GOSUB commands
  6842. to "jump" to the command on the line following the label. See also Volume
  6843. Label.
  6844.  
  6845. ^BLF:^b The ASCII character "line feed", not usually generated from the
  6846. keyboard, but stored in most ASCII files at the end of each line after the
  6847. CR character.
  6848.  
  6849. ^BMaster Environment:^b The master copy of the environment maintained by
  6850. the command processor. The master environment is manipulated with the SET,
  6851. ESET, and UNSET commands.
  6852.  
  6853. ^BMemory Resident Mode:^b A method of installing 4DOS in which swapping is
  6854. disabled, and all of 4DOS remains permanently resident in memory.
  6855. Memory-resident mode requires much more memory than the normal swapping
  6856. mode.
  6857.  
  6858. ^BModulo:^b The remainder after an integer division. For example 11 modulo
  6859. 3 is 2, because when 11 is divided by 3 the remainder is 2.
  6860.  
  6861. ^BMultiple Commands:^b A 4DOS feature which allows multiple commands to be
  6862. placed on a line, separated by a caret (^^) or other user-defined
  6863. character.
  6864.  
  6865. ^BMultitasking:^b A capability of some software (and the related hardware)
  6866. which allows two or more programs to run apparently simultaneously on the
  6867. same computer. Multitasking software for PC compatible systems includes
  6868. programs like DESQview.
  6869.  
  6870. ^BNon-Swapping Mode:^b See Memory Resident Mode.
  6871.  
  6872. ^BOption:^b See Switch.
  6873.  
  6874. ^BOR:^b A logical combination of two true or false conditions such that if
  6875. both conditions are false the result is false; if either condition is true
  6876. the result is true.
  6877.  
  6878. ^BOverstrike Mode:^b When editing text, a mode in which newly typed
  6879. characters overwrite existing characters on the line, rather than being
  6880. inserted into the line at the cursor position. See also Insert Mode.
  6881.  
  6882. ^BParameter:^b See Argument.
  6883.  
  6884. ^BParsing:^b The process 4DOS performs when it analyzes the command line,
  6885. performs alias and environment variable expansion, and finds the
  6886. appropriate internal command or external command to execute.
  6887.  
  6888. ^BPassed Environment:^b A copy of the master environment created before
  6889. running an application, so that any changes made by the application will
  6890. not affect the master environment. The size of the passed environment is
  6891. determined by the amount of space actually used in the master environment
  6892. when the application is started.
  6893.  
  6894. ^BPath:^b A specification of the directories a file resides in, including
  6895. all parent directories. For example, the path for C:\WSFILES\MYDIR\MEMO.TXT
  6896. is C:\WSFILES\MYDIR\. Path is also used to refer to the environment
  6897. variable PATH, which contains a series of path specifications used when
  6898. searching for external commands and batch files.
  6899.  
  6900. ^BPipe:^b A method for collecting the standard output of one program and
  6901. passing it on as the standard input of the next program to be executed,
  6902. signified by a vertical bar "|" on the command line. See also Redirection.
  6903.  
  6904. ^BPrimary Shell:^b The copy of the command processor which is loaded when
  6905. the system boots.
  6906.  
  6907. ^BRAM Disk:^b A pseudo "disk drive", created by software, which appears
  6908. like a normal physical disk drive to programs. RAM disks can be stored in
  6909. extended memory, XMS memory, EMS memory, or base memory, and provide a
  6910. convenient way for programs to use this memory for temporary files.
  6911.  
  6912. ^BRead-Only:^b A file attribute indicating that the file can be read, but
  6913. not written by DOS and 4DOS.
  6914.  
  6915. ^BReboot:^b The process of restarting the computer, usually by pressing the
  6916. Ctrl, Alt, and Del keys simultaneously.
  6917.  
  6918. ^BRedirection:^b A method for collecting the standard output of a program
  6919. in a file, and/or of providing the standard input for a program from a
  6920. file, signified respectively by a greater than symbol ">" or less than
  6921. symbol "<" on the command line. See also Pipe.
  6922.  
  6923. ^BReplaceable Parameter:^b See Alias Argument and Batch File Argument.
  6924.  
  6925. ^BResident Portion:^b The small portion of 4DOS stored permanently in
  6926. memory when swapping mode is in use, as opposed to the larger transient
  6927. portion. The resident portion is stored as close as possible to the
  6928. beginning of base memory.
  6929.  
  6930. ^BRoot Directory:^b The first directory, from which all other directories
  6931. are "descended." The root directory is referenced with a single backslash
  6932. (\). When a disk is first formatted, it is the only directory.
  6933.  
  6934. ^BSecondary Shell:^b Any copy of any command processor which is loaded
  6935. after the system boots. Secondary shells may be started from the command
  6936. line; by executing a "shell to DOS" operation from within an application;
  6937. implicitly by executing some DOS-related functions within certain
  6938. applications; or by starting a new partition in a multi-tasking or task
  6939. switching system.
  6940.  
  6941. ^BShell:^b A command processor. Also used to refer to a program which gives
  6942. access to DOS functions and commands through a menu- or mouse-driven
  6943. system.
  6944.  
  6945. ^BSource:^b In the 4DOS file commands (COPY, MOVE, and RENAME), the
  6946. original files before any copying or modification has taken place, i.e.
  6947. those specified earlier on the command line. See also Target.
  6948.  
  6949. ^BStack:^b An area of memory used by any program to store temporary data
  6950. while the program is running; more generally, any such storage area where
  6951. the last item stored is normally the first one removed.
  6952.  
  6953. ^BStandard Error:^b A file or character device where error messages from a
  6954. program are displayed. Standard error output always goes to the console,
  6955. unless redirection is used.
  6956.  
  6957. ^BStandard Input:^b A file or character device where a program obtains its
  6958. normal input. Standard input always comes from the console, unless
  6959. redirection is used.
  6960.  
  6961. ^BStandard Output:^b A file or character device where normal output from a
  6962. program is displayed. Standard output always goes to the console, unless
  6963. redirection is used.
  6964.  
  6965. ^BSubdirectory:^b Any directory other than the root directory. See also
  6966. Root Directory.
  6967.  
  6968. ^BSwap File:^b A disk file created by 4DOS to store its transient portion
  6969. when disk swapping is in use.
  6970.  
  6971. ^BSwapping:^b A 4DOS feature which removes the larger transient portion of
  6972. 4DOS from base memory while an application is running, leaving the maximum
  6973. possible amount of memory for the application, and allows 4DOS to restore
  6974. information such as the command history after the application is finished.
  6975. See also XMS Swapping, EMS Swapping, and Disk Swapping.
  6976.  
  6977. ^BSwitch:^b An argument to an internal command or application which
  6978. specifies a particular behavior or setting. For example, the command "DIR
  6979. /P" might be referred to as "having the /P switch set". Also, a
  6980. configuration value for 4DOS specified on the SHELL= line in CONFIG.SYS.
  6981.  
  6982. ^BSystem:^b A file attribute indicating that the file belongs to DOS and
  6983. should not be accessed by normal programs.
  6984.  
  6985. ^BTarget:^b See Destination.
  6986.  
  6987. ^BTransient Portion:^b The larger portion of 4DOS stored in memory
  6988. temporarily when swapping mode is in use, as opposed to the smaller
  6989. resident portion. The transient portion is stored as close as possible to
  6990. the end of base memory, and releases the space it is using whenever an
  6991. application is executed.
  6992.  
  6993. ^BTSR:^b A Terminate and Stay Resident program, i.e. a program which
  6994. "terminates" but remains resident in base memory, to provide capabilities
  6995. such as network support, a pop-up notepad or telephone dialer, a disk
  6996. cache, or mouse support.
  6997.  
  6998. ^BUMB:^b An XMS Upper Memory Block, whose address is above the end of
  6999. normal base memory, but is within the 1 megabyte of memory that DOS can
  7000. address directly.
  7001.  
  7002. ^BVariable:^b See Alias Argument, Batch File Argument, and Environment
  7003. Variable.
  7004.  
  7005. ^BVolume Label:^b A special, hidden file placed on any disk whose name
  7006. constitutes a "label" for the entire disk.
  7007.  
  7008. ^BWhite Space Character:^b Generally, a character used to separate
  7009. arguments on the command line. The white space characters recognized by
  7010. 4DOS are the space, tab, comma, semicolon, and equal sign.
  7011.  
  7012. ^BWildcard:^b A character ("*" or "?") or set of characters ("[...]") used
  7013. in a filename to specify the possibility that any single character or
  7014. sequence of characters can occur at that point in the actual name.
  7015.  
  7016. ^BXMS Memory:^b A software method for accessing extended memory on 286 and
  7017. 386 systems (and some systems which support version 4.0 of the EMS memory
  7018. specification). XMS memory is not additional memory, but is a software
  7019. specification only. Its use generally requires Microsoft's HIMEM.SYS be
  7020. installed as a device driver, or that another program such as 386MAX or
  7021. MOVE- EM be used.
  7022.  
  7023. ^BXMS Swapping:^b A type of swapping where the transient portion of 4DOS is
  7024. stored in XMS memory while an application is running.
  7025.  
  7026. ^BXOR (exclusive OR):^b A logical combination of two true or false
  7027. conditions such that if both conditions are false or both conditions are
  7028. true the result is false; if either condition is true and the other is
  7029. false the result is true.
  7030.  
  7031. DIRECTIVES Index of 4DOS.INI Directives
  7032.  
  7033.     @INIUSING[!1. Using the 4DOS.INI File]        @INILOCATION[!2. Location of 4DOS.INI]
  7034.     @INIFORMATS[!3. Format of Directives]           @INISTRUCTURE[!4. 4DOS.INI File Structure]
  7035.  
  7036.   @DIRECTIVES%A.[!A.] ^1Initialization^0   @DIRECTIVES%B.[!B.] ^1Configuration Directives^0      @DIRECTIVES%C.[!C.] ^1Color Directives^0
  7037.    @4StartPath[4StartPath]        @ANSI=[ANSI]              @HistMin[HistMin]          @ColorDir=[ColorDir]
  7038.    @Alias[Alias]             @BatchEcho[BatchEcho]         @HistWinHeight[HistWinHeight]    @HistWinColor[HistWinColor]
  7039.    @AutoExecPath[AutoExecPath]      @BeepFreq[BeepFreq]          @HistWinLeft[HistWinLeft]      @ListColors[ListColors]
  7040.    @Environment[Environment]       @BeepLength[BeepLength]        @HistWinTop[HistWinTop]       @StdColors[StdColors]
  7041.    @EnvFree[EnvFree]           @CursorIns[CursorIns]         @HistWinWidth[HistWinWidth]    @DIRECTIVES%D.[!D.] ^1Advanced Directives^0
  7042.    @HelpOptions[HelpOptions]       @CursorOver[CursorOver]        @LineInput[LineInput]        @CritFail[CritFail]
  7043.    @HelpPath[HelpPath]          @CommandSep[CommandSep]        @NoClobber[NoClobber]        @FineSawp[FineSwap]
  7044.    @History[History]           @EditMode[EditMode]          @ScreenRows[ScreenRows]       @FullINT2E[FullINT2E]
  7045.    @LogName[LogName]           @EscapeChar[EscapeChar]        @UpperCase[UpperCase]        @Inherit[Inherit]
  7046.    @PauseOnError[PauseOnError]       @DIRECTIVES%E.[!E.] ^1Key Mapping Directives^0         @MessageServer[MessageServer]
  7047.    @Swapping[Swapping]              @INIKEYS[Key Mapping Groups]             @Reduce[Reduce]
  7048.    @UMBEnvironment[UMBEnvironment]    @INIKEYS%General Input Keys Index[General Input]     @INIKEYS%Editing Keys Index[Editing]          @ReserveTPA[ReserveTPA]
  7049.    @UMBLoad[UMBLoad]           @INIKEYS%Hist. Window Keys Index[History Window]    @INIKEYS%LIST Keys Index[LIST]             @StackSize[StackSize]
  7050.                                                         @SwapReopen[SwapReopen]
  7051.  
  7052. INIUSING Using the 4DOS.INI File
  7053.  
  7054. 4DOS can optionally use a file of initialization information called
  7055. "^B4DOS.INI^b" by default.  Please refer to your 4DOS documentaion file for
  7056.  information on how to use a different name and define a full path.
  7057.  
  7058. You can create, add to, and edit this file with any ASCII text editor to set
  7059. 4DOS options and alter the way 4DOS works.  The 4DOS installation program
  7060. will create a 4DOS.INI file for you if one does not already exist on your
  7061. system.  Most of this section explains the options available through 4DOS.INI.
  7062. You only need to include entries in 4DOS.INI for any settings you want to
  7063. changed from their default values.  If you are happy with all the default
  7064. values, you don't need a 4DOS.INI file at all.
  7065.  
  7066. Some settings in 4DOS.INI are initialized when you install 4DOS with the
  7067. ^BINSTALL^b program provided with some 4DOS packages, so you may have a
  7068. 4DOS.INI file even if you didn't create one yourself.  You should not delete
  7069. that file unless you've checked carefully to be sure that you don't need
  7070. any of the settings the initialization program put there.
  7071.  
  7072. INILOCATION Location of 4DOS.INI
  7073.  
  7074. When 4DOS is loaded as the ^Bprimary shell^b, it searches for the 4DOS.INI file
  7075. in three places:
  7076.  
  7077.     *  If there is an "^B@@d:\path\inifile^b" option on the SHELL= line in
  7078. CONFIG.SYS, 4DOS will use the path and file name specified there, and will
  7079. not look elsewhere.
  7080.  
  7081.     *  If there is no INI file path or name on the SHELL= line, 4DOS will
  7082. look in the same directory where 4DOS.COM is stored (this is how 4DOS.INI is
  7083. found on most systems).  4DOS determines this directory automatically, or you
  7084. can set it yourself by placing a @COMSPEC[COMSPEC] directory name on the SHELL= line
  7085. in CONFIG.SYS.
  7086.  
  7087.     *  If the COMSPEC directory search fails, 4DOS will look in the
  7088. ^Broot^b directory of the boot drive.
  7089.  
  7090. When 4DOS is loaded as a ^Bsecondary shell^b, it does not search for the 4DOS.INI
  7091. file.  Instead, it reprocesses the file used for the primary shell (if
  7092. necessary), then processes any "@@d:\path\inifile" option on the secondary
  7093. shell command line.
  7094.  
  7095. Most lines in the 4DOS.INI file consist of a one-word ^Bdirective^b, an equal
  7096. sign [^B=^b], and a ^Bvalue^b.  For example, in the following line, the word
  7097. "Environment" is the directive and "2048" is the value:
  7098.  
  7099.    @DIRECTIVES%Environment=[Environment = 2048]
  7100.  
  7101. Any spaces before or after the equal sign are ignored.  The directive name
  7102. may be abbreviated to the minimum length needed to make it unique 4DOS will
  7103. display an error if the name you use is unknown or ambiguous.  We recommend
  7104. that you use full- length directive names, since future versions of 4DOS may
  7105. add directives that would make your abbreviations ambiguous and cause an
  7106. error.
  7107.  
  7108. If you have a long string to enter in 4DOS.INI (for example, for the @ColorDir=[ColorDir]
  7109. directive), you must enter it all on one line.  Strings cannot be "continued"
  7110. to a second line.  Each line may be up to ^B511^b characters long.
  7111.  
  7112. The format of the value part of a directive line depends on the individual
  7113. directive.  It may be a numeric value, a single character, a choice (like
  7114. "Yes" or "No"), a color setting, a key name, a path, a filename, or a text
  7115. string.  The value begins with the first non-blank character after the equal
  7116. sign and ends at the end of the line or the beginning of a comment.
  7117.  
  7118. Blank lines are ignored in the 4DOS.INI file and can be used to separate
  7119. groups of directives.  You can place comments in the file by beginning a line
  7120. with a semicolon [^B;^b].  You can also place comments at the end of any line
  7121. except one containing a text string value.  To do so, enter at least one
  7122. space or tab after the value, a semicolon, and your comment, like this:
  7123.  
  7124.     Environment = 2048 ;set standard environment size
  7125.  
  7126. If you try to place a comment at the end of a string value, the comment will
  7127. become part of the string and will probably cause an error.
  7128.  
  7129. When 4DOS detects an error while processing the 4DOS.INI file, it displays an
  7130. error message, ignores the line that caused the error, and prompts you to
  7131. press a key to continue processing the file.  This allows you to note any
  7132. errors before the startup process continues.  The directive in error will
  7133. retain its previous or default value.  Only the most catastrophic errors
  7134. (like a disk read failure) will cause 4DOS to ignore all or a large part of
  7135. the 4DOS.INI file.  If you don't want 4DOS to pause after each error, use a
  7136. "@PauseOnError[PauseOnError] = No" directive at the beginning of the file.
  7137.  
  7138. INISTRUCTURE 4DOS.INI File Structure
  7139.  
  7140. The 4DOS.INI file is an ASCII file containing directives to control the
  7141. configuration of 4DOS in primary and secondary shells.  Blank lines are
  7142. ignored and can be used to separate groups of directives.  You can place
  7143. comments in the file by beginning a line with a semicolon (^B;^b).  You can
  7144. also place comments at the end of any line except one containing a text
  7145. string value by entering at least one space or tab after the value, a
  7146. semicolon, and your comment.
  7147.  
  7148. The 4DOS.INI file has two sections, which are identified by a name in square
  7149. brackets on a line by itself.  The section names are
  7150.  
  7151. ^B[Primary]:^b  Directives in this section will be used when 4DOS is running as
  7152. the primary shell.  The same values will be passed automatically to all
  7153. secondary shells, unless overridden by a directive with the same name in the
  7154. ^B[Secondary]^b section.
  7155.  
  7156. ^B[Secondary]:^b  Directives in this section are used in secondary shells
  7157. only, and override any corresponding primary shell settings.  For example, if
  7158. your 4DOS.INI file contains the lines:
  7159.  
  7160.     ScreenRows = 25
  7161.     [Secondary]
  7162.     ScreenRows = 50
  7163.  
  7164. then 4DOS will assume that you have 25 rows on the screen in the primary
  7165. shell and 50 lines in all secondary shells.
  7166.  
  7167. Lines that precede a section name are used in both primary and secondary
  7168. shells.
  7169.  
  7170. The @SETDOS[SETDOS] command can override several of the 4DOS.INI file directives.  For
  7171. example, the number of rows on the screen can be adjusted with @SETDOS%/R[SETDOS /R].
  7172. The correspondence between SETDOS options and INI file directives is noted
  7173. under each directive below, and under each option of the SETDOS command.
  7174.  
  7175. Secondary shells automatically inherit the configuration settings currently
  7176. in effect in the previous shell.  If values have been changed by SETDOS since
  7177. 4DOS started, the new values will be passed to the secondary shell.  If the
  7178. previous shell's INI file had a ^B[Secondary]^b section, it will then be read and
  7179. processed.  If not, the previous shell's settings will remain in effect.  For
  7180. example, if you set @BatchEcho[BatchEcho = Yes] in 4DOS.INI, do not include a
  7181. ^B[Secondary]^ section, and use @SETDOS%/V[SETDOS /V0] to turn off batch file echoing in the
  7182. primary shell, then secondary shells will inherit the SETDOS setting, i.e.
  7183. batch files will default to no echo.
  7184.  
  7185. If you want to force secondary shells to start with the same value as the
  7186. primary shell for a particular directive, regardless of any changes made with
  7187. SETDOS, repeat the directive in the ^B[Secondary]^b section of 4DOS.INI.  You can
  7188. also place the directive outside any section of 4DOS.INI, then include an
  7189. empty ^B[Secondary]^b section.  The inclusion of a ^B[Secondary]^b section will force
  7190. 4DOS to re-read 4DOS.INI, and the directives outside any section will be
  7191. reprocessed as they apply to both primary and secondary shells.  Because
  7192. 4DOS.INI is processed after values from the previous shell are inherited, the
  7193. value in 4DOS.INI will override the inherited value.  Using the @BatchEcho[BatchEcho]
  7194. example above, either of the following sets of 4DOS.INI directives would work
  7195. to ensure that BatchEcho is set to Yes in secondary shells:
  7196.  
  7197.     Same directive                Empty
  7198.     in both sections              [Secondary]
  7199.     ----------------              -----------
  7200.     [Primary]                     BatchEcho = Yes
  7201.     BatchEcho = Yes                 ... <other
  7202.      ... <other directives>         ...  directives>
  7203.     [Secondary]                   [Secondary]
  7204.     BatchEcho = Yes               <End of File>
  7205.      ... <other directives>
  7206.  
  7207. If you start a secondary shell from a task switching program like ^BWindows^^b,
  7208. ^BDESQview^b, or ^BBack&Forth^b, you can specify an alternate location and name for
  7209. 4DOS.INI by passing the "^B@@d:\path\inifile^b" option to 4DOS as a command-line
  7210. parameter In this case, the configuration settings in the alternate 4DOS.INI
  7211. file will supersede any settings inherited from the previous shell.  Any
  7212. values which are not explicitly set in the alternate file will retain the
  7213. value they had in the previous shell.  Any [Primary] section in the alternate
  7214. file will be ignored because it is being run from a secondary shell.
  7215.  
  7216. INIFORMATS Types of Directive Formats
  7217.  
  7218. There are 8 types of directives in 4DOS.INI.  When you look at the
  7219. descriptions below, you can tell the directive type by the way in which the
  7220. allowable values are shown.
  7221.  
  7222. *  Name = ^Bnnnn^b (1234):  This directive takes a numeric value which replaces
  7223.    the "nnnn."  The default value is shown in parentheses.
  7224.  
  7225. *  Name = ^Bcharacter^b (X):  This directive accepts a single character as its
  7226.    value.   The default character is shown in parentheses.  You must type in
  7227.    the actual character, you can not use a key name.
  7228.  
  7229. *  Name = ^BCHOICE1 | Choice2 | ...^b :  This directive takes a choice value.
  7230.    The possible choices are listed, separated by vertical bars.  The ^Bdefault^b
  7231.    value is shown in all ^Bupper case^b letters in the directive description, but
  7232.    in your file any of the choices can be entered in upper case or lower
  7233.    case.  The choices can be abbreviated as long as the abbreviation is
  7234.    unique and can not cause ambiguity.  For example, if the choices were
  7235.    shown as "YES | No" then "YES" is the default.  You could enter "Y", "N",
  7236.    "y", or "n"  for the value.  But if the choices are shown as "YES | No |
  7237.    Never" then you could not use "N" as an abbreviation because it would be
  7238.    ambiguous.
  7239.  
  7240. *  Name = ^Bcolor^b:  This directive takes a color specification in the form:
  7241.  
  7242.     ^B[BRIght] [BLInk] fg ON bg [BORder bc]^b
  7243.  
  7244.    where ^Bfg^b is the foreground color.  ^Bbg^b is the background color.  ^Bbc^b is the
  7245.    border color.
  7246.  
  7247.    See the section on standard 4DOS @COLORS[Color Attributes & Names] for a list of
  7248.    allowable color names.
  7249.  
  7250. *  Name = ^BKey^b:  This directive takes a key specification in the form:
  7251.  
  7252.     [Prefix-]Keyname
  7253.  
  7254.    See the section on @KEYS[Key Names & Scan Codes] for a list of allowable key
  7255.    names.
  7256.  
  7257.    All key names must be spelled as shown, and can be abbreviated as long as
  7258.    the abbreviation is unique and unambiguous.  Alphabetic keys can be
  7259.    specified in upper-case or lower-case.  You cannot specify a punctuation
  7260.    key.
  7261.  
  7262.    Example:
  7263.  
  7264.     AddFile = Alt-F10        ;This is okay
  7265.         AddFile = Alt F10        ;The space will cause an error
  7266.  
  7267.    If you prefer, you can use a numeric value instead of a key name.  Use the
  7268.    @SUPPORT^ASCII[ASCII] code for an ASCII, extended ASCII, or control character.  Use the
  7269.    scan code preceded by an at-sign [^B@@^b] for extended key codes like F1 or the
  7270.    cursor keys.  In general, you will find it easier to use the names
  7271.    described above rather than key numbers.
  7272.  
  7273. *  Name = ^BPath^b:  This directive takes a path specification, but not a
  7274.    filename.  The path should include both a drive and path (e.g., C:\4DOS)
  7275.    to avoid any possible ambiguities.  A trailing backslash [^B\^b] at the end
  7276.    of the path name is acceptable but not required.  Any default path is
  7277.    described in the text.
  7278.  
  7279. *  Name = ^BFile^b:  This directive takes a filename.  We recommend that you use
  7280.    a ^Bfull filename^b including the drive letter and path to avoid any possible
  7281.    ambiguities.  Any default filename is described in the text.
  7282.  
  7283. *  Name = ^Bstring^b:  This directive takes a string in the format shown.
  7284.    The text describes the default value and any additional requirements for
  7285.    formatting the string correctly.  No comments are allowed.
  7286.  
  7287. 4DOS contains a fixed-length area for storing strings entered in 4DOS.INI,
  7288. including file names, paths, and other strings.  This area is large and is
  7289. unlikely to overflow, but if it does, you will receive an error message.
  7290. If this occurs, reduce the complexity of your 4DOS.INI file or contact JP
  7291. Software's Technical Support department for assistance.
  7292.  
  7293. 4StartPath 4StartPath  (Initialization Directive)
  7294.  
  7295.     ^B4StartPath=Path^b:  Sets the drive and directory where 4DOS should
  7296. look for the 4START and 4EXIT batch files.
  7297.  
  7298. Alias Alias  (Initialization Directive)
  7299.  
  7300.     ^BAlias=nnnn^b (^B1024^b):  Sets the amount of memory in bytes
  7301. allocated for the alias list.  The allowable range of values is ^B256^b to ^B32767^b
  7302. bytes.
  7303.  
  7304. AutoExecPath AutoExecPath  (Initialization Directive)
  7305.  
  7306.     ^BAutoExecPath=Path^b:  Sets the path used to find AUTOEXEC.BAT if
  7307. 4DOS is started as a primary shell with the /P option in CONFIG.SYS.  The
  7308. default is the ^Broot^b directory of the boot drive.
  7309.  
  7310. Environment Environment  (Initialization Directive)
  7311.  
  7312.     ^BEnvironment=nnnn^b (^B512^b):  Sets the amount of memory allocated
  7313. to the environment in bytes.  The allowable range of values is ^B256^b to ^B32768^b
  7314. bytes.
  7315.  
  7316. EnvFree EnvFree  (Initialization Directive)
  7317.  
  7318.     ^BEnvFree=nnnn^b (^B128^b):  Sets the minimum amount of memory in
  7319.  bytes that will be available in the environment for secondary shells.  4DOS
  7320. will enlarge the environment for each secondary shell, if necessary, so that
  7321. there is at least this much free environment space when the shell starts.
  7322. The allowable range of values is ^B128^b to ^B32768^b bytes.
  7323.  
  7324. HelpOptions HelpOptions  (Initialization Directive)
  7325.  
  7326.     ^BHelpOptions=[/M /Sn /X]^b:  Sets default options for the 4DOS help
  7327. system.  The possible options are:
  7328.  
  7329.         ^2/M^0   Force monochrome display on color systems
  7330.                 ^2/S0^0  Mouse movement at half normal speed
  7331.                 ^2/S2^0  Mouse movement at double normal speed
  7332.                 ^2/S4^0  Mouse movement at quadruple normal speed
  7333.                 ^2/X^0   Disable mouse entirely -- use with Microsoft serial
  7334.                      or PS/2 mice which cause ^B4HELP^b to load very slowly
  7335.                      (this is due to a problem in the mouse driver)
  7336.  
  7337. HelpPath HelpPath  (Initialization Directive)
  7338.  
  7339.     ^BHelpPath=Path^b:  Sets the path used to find ^B4HELP.EXE^b when
  7340. ^BF1^b is pressed or the @HELP[HELP] command is used.  If this directive is
  7341. not used, 4DOS will search the current directory and each of the directories
  7342. in the @PATH[PATH]
  7343.  
  7344. History History  (Initialization Directive)
  7345.  
  7346.     ^BHistory=nnnn^B (^B1024^b):  Sets the amount of memory allocated to
  7347. the history list in bytes.  The allowable range of values is ^B512^b to ^B8192^b
  7348. bytes.
  7349.  
  7350. LogName LogName  (Initialization Directive)
  7351.  
  7352.     ^BLogName=File^ (^B4DOSLOG^b):  Sets the log file name and/or path.
  7353. If only a path is given, 4DOS will use the default log file name (^B4DOSLOG^b).
  7354. Using LogName does not turn logging on, you must still use @LOG[LOG ON] to do so.
  7355.  
  7356. PauseOnError PauseOnError  (Initialization Directive)
  7357.  
  7358.     ^BPauseOnError=YES | No^b:  "^BYes^b" tells 4DOS to pause with
  7359. the message "^BError in 4DOS.INI, press any key to continue processing^b" after
  7360. displaying any error message related to a specific line in the 4DOS.INI file.
  7361. "^BNo^b" continues processing with no pause after an error message is displayed.
  7362.  
  7363. Swapping Swapping  (Initialization Directive)
  7364.  
  7365.     ^BSwapping=swap type [, swap type] ...^b:  Sets the type of swapping 4DOS
  7366. should use.  4DOS runs in two parts, a ^Bresident^b portion that is always in
  7367. memory and a ^Btransient^b portion that can be stored in EMS memory, in XMS
  7368. memory, on a RAM disk, or on your hard disk while application programs are
  7369. running.  The resident portion uses about ^B3K^b of memory in the primary shell
  7370. and about ^B1.5K^b in secondary shells.  The transient portion uses about ^B88K^b of
  7371. memory.  4DOS will perform most quickly if the transient portion is swapped
  7372. to the fastest memory or device available.
  7373.  
  7374. Swapping for the primary shell normally requires about ^B96K^b of EMS memory,
  7375. or ^B88K^b of XMS memory or disk space.  Secondary shells normally require
  7376. ^B32K^b of EMS memory, or ^B28K^b of XMS memory or disk space.  If you have a
  7377. large environment, alias list, or history list, more memory will be required
  7378. in both primary and secondary shells.  The EMS requirements are larger
  7379. because EMS memory is allocated in 16K increments 4DOS does not actually use
  7380. more memory when swapping to EMS.
  7381.  
  7382. The swap type may be:
  7383.  
  7384.     ^2EMS^0:  4DOS will swap to EMS expanded memory if it is available.
  7385. You must have expanded memory and an EMS memory manager (version 3.2 or
  7386. later) for this option.
  7387.  
  7388.     ^2XMS^0:  4DOS will swap to XMS extended memory if it is available
  7389. (you must have an 80286, 386, or 486 computer for this option, and an XMS
  7390. memory manager).
  7391.  
  7392.     ^2d:\path^0:  4DOS will create a swap file in the drive and directory
  7393. specified.  The file will be called ^B4DOSSWAP.NNN^b where "^BNNN^b" is the shell
  7394. number.  This swap file is created as a ^Bhidden system^b file to avoid
  7395. accidental deletion and will not be visible with a normal DIR command.
  7396. Swapping to a RAM disk will generally be somewhat faster than swapping to a
  7397. hard disk.  Do not use a floppy disk for swapping because its performance is
  7398. likely to be unacceptably slow.
  7399.  
  7400.     ^2None^0:  No swapping.  The transient portion of 4DOS will remain in
  7401. memory at all times.  This option will reduce memory available for
  7402. application programs by about 90K compared to the other swap types, and
  7403. should be used ^Bonly^b when no other swapping options are available.
  7404.  
  7405. You can specify ^Bmultiple swap types^b and 4DOS will try them in the order
  7406. listed.  Swap type "^BNone^b" is always appended to your list of possible swap
  7407. types as a "last resort", even if you don't include it explicitly.  This
  7408. allows 4DOS to start even if the other swap types you specify don't work.
  7409.  
  7410. For example, if your system has EMS memory and a RAM disk set up as drive D,
  7411. the directive:
  7412.  
  7413.     Swapping = EMS, D:\, C:\SWAP
  7414.  
  7415. will tell 4DOS to try EMS memory first, then the RAM disk, and finally the
  7416. \SWAP directory on drive C.  If all of these options fail (because there
  7417. isn't enough free space available), the transient portion of 4DOS will remain
  7418. in memory (swap type "None").
  7419.  
  7420. The default Swapping specification is:
  7421.  
  7422.     ^BSwapping = EMS, XMS, x:\, None^b
  7423.  
  7424. where "^Bx^b" is the boot drive (for the primary shell) or the ^BCOMSPEC^b drive (for
  7425. secondary shells).  (Disk swapping will not be included as a default if the
  7426. boot drive is A:  or B:, because floppy disk swapping is too slow to be
  7427. useful on most systems.)  The default is usually adequate for most systems.
  7428.  
  7429. (Also see the @SWAPPING[SWAPPING] command).
  7430.  
  7431. UMBEnvironment UMBEnvironment  (Initialization Directive)
  7432.  
  7433.     ^BUMBEnvironment=Yes | NO^b:  "^BYes^b" attempts to load the master
  7434.  environment into a ^BUMB^b (Upper Memory Block).  This reduces 4DOS's base
  7435. memory requirements but may cause problems with some programs that try to
  7436. access the master environment directly.  This option requires an 80286, 386,
  7437. or 486 computer and appropriate support software.
  7438.  
  7439. UMBLoad UMBLoad  (Initialization Directive)
  7440.  
  7441.     ^BUMBLoad= Yes | NO^b:  "^BYes^b" attempts to load the resident
  7442. portion of 4DOS into a ^BUMB^b (Upper Memory Block).  This reduces the size of
  7443. the resident portion in base memory from about 3K bytes to ^B256 bytes^b, plus
  7444. the environment size (unless you have also enabled @UMBEnvironment=[UMBEnvironment]).  This
  7445. option requires an 80286, 386, or 486 computer and appropriate support
  7446. software.
  7447.  
  7448. ANSI= ANSI  (Configuration Directive)
  7449.  
  7450.     ^BANSI=AUTO | Yes | No^b:  Tells 4DOS whether an ANSI driver is
  7451. installed and should be used for the CLS and COLOR commands.  4DOS normally
  7452. determines this itself, but if you are using a non-standard ANSI driver or
  7453. your loading sequence is unusual, you may need to explicitly inform 4DOS.
  7454. Also see @SETDOS%ANSI=[SETDOS /A].
  7455.  
  7456. BatchEcho BatchEcho  (Configuration Directive)
  7457.  
  7458.     ^BBatchEcho=YES | No^b:  Sets the default batch ECHO mode.  "^BYes^b"
  7459. enables echoing of all batch file commands unless ECHO is explicitly set off
  7460. in the batch file.  "^BNo^b" disables batch file echoing unless ECHO is
  7461. explicitly set on.  Also see @SETDOS%BatchEcho=[SETDOS /V].
  7462.  
  7463. BeepFreq BeepFreq  (Configuration Directive)
  7464.  
  7465.     ^BBeepFreq= ^Bnnnn^b (^B440^b):  Sets the default @BEEP[BEEP] command frequency
  7466. in ^BHz^b.  This is also the frequency for 4DOS "error" beeps (if you press
  7467. an illegal key, for example).
  7468.  
  7469. To disable all 4DOS error beeps set this or @BeepLength[BeepLength] to ^B0^b. If you do, the
  7470. @BEEP[BEEP] command will still be operable, but will not produce sound unless you
  7471. explicitly specify the frequency and duration.
  7472.  
  7473. BeepLength BeepLength  (Configuration Directive)
  7474.  
  7475.     ^BBeepLength=nnnn^b (^B2^b):  Sets the default @BEEP[BEEP] length in system
  7476. clock ticks (approximately 1/18 of a second per tick).  BeepLength is also
  7477. the default length for 4DOS "error" beeps (if you press an illegal key, for
  7478. example).
  7479.  
  7480. CursorIns CursorIns  (Configuration Directive)
  7481.  
  7482.     ^BCursorIns=nnnn^b (^B100^b):  This is the shape of the cursor
  7483. for ^Binsert^b mode during command line editing and all commands which accept
  7484. line input (@DESCRIBE[DESCRIBE], @ESET[ESET], etc.).  The size is a ^Bpercentage^b of the total
  7485. character cell size, between ^B0%^b and ^B100%^b.  Because of the way video BIOSes
  7486. map the cursor shape, you may not get a smooth progression in cursor shapes
  7487. as CursorIns and @CursorOver[CursorOver] change.  Also see @SETDOS%CursorIn=[SETDOS /S].
  7488.  
  7489. CursorOver CursorOver  (Configuration Directive)
  7490.  
  7491.     ^BCursorOver=nnnn^b (^B10^b):  This is the shape of the cursor
  7492. for ^Bovertype^b mode during command line editing and all commands which accept
  7493. line input (@DESCRIBE[DESCRIBE], @ESET[ESET], etc.).  The size is a ^Bpercentage^b of the total
  7494. character cell size, between ^B0%^b and ^B100%^b.  Because of the way video BIOSes
  7495. map the cursor shape, you may not get a smooth progression in cursor shapes
  7496. as CursorOver and @CursorIns[CursorIns] change.  Also see @SETDOS%CursorOver=[SETDOS /S].
  7497.  
  7498. CommandSep CommandSep  (Configuration Directive)
  7499.  
  7500.     ^BCommandSep=character^B (^B^^^b):  This is the character used to separate
  7501. multiple commands on the same line.  You cannot use any of the @REDIRECTION[redirection]
  7502. characters (| > < ) or any of the whitespace characters (space, tab, comma,
  7503. or equal sign).  Also see @SETDOS%CommandSep=[SETDOS /C].
  7504.  
  7505. EditMode EditMode  (Configuration Directive)
  7506.  
  7507.     ^BEditMode=Insert | OVERSTRIKE^b:  This directive lets you start the
  7508. command line editor in either insert or overstrike mode.  Also see @SETDOS%EditMode=[SETDOS /M].
  7509.  
  7510. EscapeChar EscapeChar  (Configuration Directive)
  7511.  
  7512.     ^BEscapeChar=character^b (^BCtrl-X^b):  Sets the character used to suppress
  7513. the normal meaning of the following character.  You cannot use any of the
  7514. @REDIRECTION[redirection] characters  (| > < ) or the whitespace characters (space, tab,
  7515. comma, or equal sign) as the  escape character.  Also see @SETDOS%EscapeChar=[SETDOS /E].
  7516.  
  7517. HistMin HistMin  (Configuration Directive)
  7518.  
  7519.     ^BHistMin=nnnn^b (^B0^b):  Sets the ^Bminimum^b command line size to save
  7520. in the command history list.  Any command line whose length is less than this
  7521. value will not be saved.  Legal values range from ^B0^b (save everything) to ^B256^b
  7522. (disable all command history saves).
  7523.  
  7524. HistWinHeight HistWinHeight  (Configuration Directive)
  7525.  
  7526.     ^BHistWinHeight=nn^b (^B12^b):  Sets the ^Bheight^b of the command line
  7527. history window in lines, including the border.  Legal values range from ^B5^b to
  7528. the height of your ^Bscreen^b.  Any value which would cause the bottom of the
  7529. window to be off the screen will be adjusted so that the entire window
  7530. remains on the screen.
  7531.  
  7532. HistWinLeft HistWinLeft  (Configuration Directive)
  7533.  
  7534.     ^BHistWinLeft=nn^b (^B40^b):  Sets the horizontal position of the
  7535. ^Bleft^b side of the command line history window.  Legal values range from ^B0^b
  7536. (the left edge of the screen) to the number of columns on your ^Bscreen minus
  7537. 10^b.  Any value which would cause the right side of a minimum-width window to
  7538. be off the screen will be adjusted so that the entire window remains on the
  7539. screen.
  7540.  
  7541. HistWinTop HistWinTop  (Configuration Directive)
  7542.  
  7543.     ^BHistWinTop=nn^b (^B1^b):  Sets the vertical position of the ^Btop^b of
  7544. the command line history window.  Legal values range from ^B0^b (the top of the
  7545. screen) to the number of rows on your ^Bscreen minus 5^b.  Any value which would
  7546. cause the bottom of a minimum-height window to be off the screen will be
  7547. adjusted so that the entire window remains on the screen.
  7548.  
  7549. HistWinWidth HistWinWidth  (Configuration Directive)
  7550.  
  7551.     ^BHistWinWidth=nn^b (^B36^b):  Sets the ^Bwidth^b of the command line
  7552. history window in characters, including the border.  Legal values range from
  7553. ^B10^b to the width of your ^Bscreen^b.  Any value which would cause the right side of
  7554. the window to be off the screen will be adjusted so that the entire window
  7555. remains on the screen.
  7556.  
  7557. LineInput LineInput  (Configuration Directive)
  7558.  
  7559.     ^BLineInput=Yes | NO^b:  This directive controls how 4DOS gets its input from
  7560. the command line.  "^BYes^b" forces 4DOS to use line input via the DOS service
  7561. INT 21H 0AH "Get Line" which is the way that COMMAND.COM gets input.  This
  7562. will ^Bdisable^b command-line editing, history recall, and filename completion,
  7563. and is normally used only for rare memory-resident programs (TSRs) which do
  7564. not work properly unless the command processor uses line input.
  7565.  
  7566. If you have a particular program that requires line input, you can use
  7567. @SETDOS%LineInput=[SETDOS /L] to temporarily change modes.  See APPNOTES.DOC for any specific programs
  7568. which require this option.
  7569.  
  7570. NoClobber NoClobber  (Configuration Directive)
  7571.  
  7572.     ^BNoClobber=Yes | NO^b:  If set to Yes, will prevent standard output
  7573. @REDIRECTION[redirection] from overwriting an existing file, and will require that the
  7574. output file already exist for append redirection.  Also see @SETDOS%NoClobber=[SETDOS /N].
  7575.  
  7576. ScreenRows ScreenRows  (Configuration Directive)
  7577.  
  7578.     ^BScreenRows=nnnn^b:  Sets the number of screen rows used by the
  7579. video display.  Normally, 4DOS detects the screen size automatically, but if
  7580. you have a non-standard display you may need to set it explicitly.  This
  7581. value does not affect screen scrolling, which is controlled by your video
  7582. BIOS or ANSI driver.  ^BScreenRows^b is used only by the @LIST[LIST] and @SELECT[SELECT]
  7583. commands, the paged output options of other commands (e.g., @TYPE%/P[TYPE /P]), and
  7584. error checking in the screen output commands.  Also see @SETDOS%ScreenRows=[SETDOS /R].
  7585.  
  7586. UpperCase UpperCase  (Configuration Directive)
  7587.  
  7588.     ^BUpperCase=Yes | NO^b:  "^BYes^b" specifies that filenames should be displayed in
  7589. the traditional upper-case by internal commands like @COPY[COPY] and @DIR[DIR].  "^BNo^b"
  7590. allows the normal 4DOS lower-case style.  Also see @SETDOS%UpperCase=[SETDOS /U].
  7591.  
  7592. ColorDir ColorDir (Color Directive)
  7593.  
  7594.     ^BColorDir=ext1 ext2 ...:colora;ext3 ext4 ... :colorb; ...^B (^Bnone^b):
  7595. Sets the directory colors.  The format is the same as that used for the
  7596. @COLORDIR[COLORDIR] environment variable.  If you set the COLORDIR environment variable,
  7597. it will override this directive.
  7598.  
  7599. The last color specification which matches a file extension will be used,
  7600. overriding any previous specifications.
  7601.  
  7602. Special file types can be used as "extension" to define the color to be used
  7603. for specific file attributes:
  7604.  
  7605.         ^2DIRS^0   Directories
  7606.         ^2RDONLY^0  Read-Only Files
  7607.                 ^2HIDDEN^0  Hidden Files
  7608.         ^2SYSTEM^0  System Files
  7609.  
  7610. You may find it useful to use the ^BCOLORDIR^b variable for experimenting,
  7611. then to set permanent directory colors with a ^BColorDir^b directive in
  7612. 4DOS.INI.
  7613.  
  7614. Example:
  7615.  
  7616.   ColorDir = com exe:bri yel;b*:bri gre;bak:whi;dirs:bri whi on mag
  7617.  
  7618. HistWinColor HistWinColor (Color Directive)
  7619.  
  7620.     ^BHistWinColor=Color^b:  Sets the default colors for the command line history window.
  7621. If this directive is not used the colors will be reversed from the current colors on
  7622. the screen.
  7623.  
  7624. ListColors ListColors (Color Directive)
  7625.  
  7626.     ^BListColors=Color^b:  Sets the colors used by the @LIST[LIST] and @SELECT[SELECT]
  7627. commands.  If this directive is not used, @LIST[LIST] and @SELECT[SELECT] will use the
  7628. current default colors set by the @CLS[CLS] or @COLOR[COLOR] command or by the @StdColors[StdColors]
  7629. directive.
  7630.  
  7631. StdColors StdColors (Color Directive)
  7632.  
  7633.     ^BStdColors=Color^b:  Sets the standard colors to be used when @CLS[CLS] is used
  7634. without a color specification, and for @LIST[LIST] and @SELECT[SELECT] if @ListColors[ListColors] is not
  7635. used.
  7636.  
  7637. Using this directive is equivalent to placing a @COLOR[COLOR] command in
  7638. AUTOEXEC.BAT.
  7639.  
  7640. StdColors takes effect once the transient portion of 4DOS starts (i.e., when
  7641. 4START is run), but will not affect the color of error or other messages
  7642. displayed during the 4DOS loading and initialization process.
  7643.  
  7644. If ANSI.SYS or a compatible driver is not loaded, the colors will not be
  7645. "sticky"  and you may lose them when you run an application.
  7646.  
  7647. INIKEYS Key Mapping Directives
  7648.  
  7649. The directives in this group allow you to change the @KEYS[keys] used for 4DOS
  7650. command line editing and other internal functions.  They take effect only
  7651. inside 4DOS itself and do not affect other programs (including 4DOS's
  7652. external help program, 4HELP.EXE).
  7653.  
  7654. The description of each directive below explains the function of the
  7655. corresponding key.  Using the directive allows you to assign a different or
  7656. additional key to perform the function described.  For example, to assign
  7657. function key F3 to invoke the 4DOS HELP facility:
  7658.  
  7659.     Help = F3
  7660.  
  7661. Any directive can be used multiple times to assign multiple keys to the same
  7662. function.  For example:
  7663.  
  7664.     ListFind = F    F does a find in LIST
  7665.     ListFind = F5   F5 also does a find in LIST
  7666.  
  7667. Use some care when you reassign keystrokes.  If you assign a default key to a
  7668. different function, it will no longer be available for its original use.  For
  7669. example, if you assign F1 to the @Addfile[AddFile] directive (a part of filename
  7670. completion), the F1 key will no longer invoke 4DOS's HELP facility, so you
  7671. will probably want to assign a different key to HELP.
  7672.  
  7673. Some keys are interpreted by your system's BIOS and are not passed on to
  7674. 4DOS.  For example, ^BCtrl-S^b tells the BIOS to pause screen output temporarily,
  7675. and on some systems ^BCtrl-P^b toggles Print Screen mode.  Keys which are
  7676. interpreted by the BIOS cannot be assigned with key mapping directives,
  7677. because 4DOS never receives these keystrokes and therefore cannot act on
  7678. them.
  7679.  
  7680. 4DOS processes all command line editing key assignments before looking for
  7681. @ALIAS%Keystroke Aliases[keystroke aliases].  For example, if you assign Shift-F1 to HELP and also
  7682. assign Shift-F1 to a key alias, the key alias will be ignored.
  7683.  
  7684. Assigning a new keystroke for a function does not deassign the default
  7685. keystroke for the same function.  If you want to deassign one of the standard
  7686. 4DOS keys without assigning it to another function, use the @NormalLey[NormalKey]
  7687. directive or the corresponding directive for keys in the
  7688. other key groups (@NormalEditKey[NormalEditKey], @NormalHWinKey[NormalHWinKey], or @NormalListKey[NormalListKey]).
  7689.  
  7690. @INIKEYS%Input Keys Index[Input Keys]:  This first set of Key Mapping Directives
  7691. applies to all input.  These directives are effective whenever 4DOS requests
  7692. input from the keyboard, including command line editing and the @DESCRIBE[DESCRIBE],
  7693. @ESET[ESET], @INPT[INPUT], @LIST[LIST], and @SELECT[SELECT] commands.  (Scrolling through the command
  7694. history list is controlled by @NextHist[NextHist] and @PrevHist[PrevHist], not by the @Up[Up] and @Down[Down]
  7695. directives).
  7696.  
  7697. @INIKEYS%Editing Keys Index[Command Line Editing Keys]:  These directives apply only to command line
  7698. editing.  They are only effective at the 4DOS prompt.
  7699.  
  7700. @INIKEYS%Hist. Window Keys Index[History Window Keys]:  These directives apply only to the "popup" history
  7701. window triggered by @HistWinOpen[HistWinOpen].
  7702.  
  7703. @INIKEYS%LIST Keys Index[LIST Keys]:  The keys in this group of Key Mapping Directives are effective
  7704. only inside the @LIST[LIST] command.
  7705.  
  7706.                 ^1Key Mapping Directives Index^0
  7707.  
  7708.             @INIKEYS%A.[A.] ^1General Input Keys Index^0
  7709.   @BackSpace[BackSpace]         @BeginLine[BeginLine]         @Del[Del]               @DelToBeginning[DelToBeginning]
  7710.   @DelToEnd[DelToEnd]          @DelWordLeft[DelWordLeft]       @DelWordRight[DelWordRight]      @Down[Down]
  7711.   @EndLine[EndLine]           @EraseLine[EraseLine]         @ExecLine[ExecLine]          @Ins[Ins]
  7712.   @Left[Left]              @NormalKey[NormalKey]         @Right[Right]             @Up[Up]
  7713.   @WordLeft[WordLeft]          @WordRight[WordRight]
  7714.  
  7715.                @INIKEYS%B.[B.] ^1Editing Keys Index^0
  7716.   @AddFile[Addfile]           @CommandEscape[CommandEscape]     @DelHistory[DelHistory]        @EndHistory[EndHistory]
  7717.   @Help[Help]              @NextFile[NextFile]          @NextHistory[NextHistory]       @NormalEditKey[NormalEditKey]
  7718.   @PrevFile[PrevFile]          @PrevHistory[PrevHistory]       @SaveHistory[SaveHistory]
  7719.  
  7720.  
  7721.              @INIKEYS%C.[C.] ^1Hist. Window Keys Index^0
  7722.   @HistWinBegin[HistWinBegin]     @HistWinDel[HistWinDel]         @HistWinEdit[HistWinEdit]       @HistWinEnd[HistWinEnd]
  7723.   @HistWinExec[HistWinExec]      @HistWinOpen[HistWinOpen]        @NormalHWinKey[NormalHWinKey]
  7724.  
  7725.  
  7726.                  @INIKEYS%D.[D.] ^1LIST Keys Index^0
  7727.   @ListFind[ListFind]         @ListHighBit[ListHighBit]         @ListNext[ListNext]              @ListPrint[ListPrint]
  7728.   @ListWrap[ListWrap]         @NormalListKey[NormalListKey]
  7729.  
  7730. BackSpace BackSpace  (General Input Key Mapping Directive)
  7731.  
  7732.     ^BBackSpace=Key^b  (^BBksp^b):  Deletes the character to the left of
  7733. the cursor.
  7734.  
  7735. BeginLine BeginLine  (General Input Key Mapping Directive)
  7736.  
  7737.     ^BBeginLine=Key^b  (^BHome^b):  Moves the cursor to the beginning of
  7738. the line.
  7739.  
  7740. Del Del (General Input Key Mapping Directive)
  7741.  
  7742.     ^BDel=Key^b  (^BDel^b):  Deletes the character at the cursor.
  7743.  
  7744. DelToBeginning DelToBeginning  (General Input Key Mapping Directive)
  7745.  
  7746.     ^BDelToBeginning=Key^b (^BCtrl-Home^b):  Deletes from the cursor to
  7747. the start of the line.
  7748.  
  7749. DelToEnd DelToEnd  (General Input Key Mapping Directive)
  7750.  
  7751.     ^BDelToEnd=Key^b  (^BCtrl-End^b):  Deletes from the cursor to the end
  7752. of the line.
  7753.  
  7754. DelWordLeft DelWordLeft  (General Input Key Mapping Directive)
  7755.  
  7756.     ^BDelWordLeft=Key^b  (^BCtrl-L^b):  Deletes the word to the left of
  7757. the cursor.
  7758.  
  7759. DelWordRight DelWordRight  (General Input Key Mapping Directive)
  7760.  
  7761.     ^BDelWordRight=Key^b  (^BCtrl-R^b, ^BCtrl-Bksp^b):  Deletes the word
  7762. to the right of the cursor.
  7763.  
  7764. Down Down  (General Input Key Mapping Directive)
  7765.  
  7766.     ^BDown=Key^b  (^BDown^b):  Scrolls the display down one line in @LIST[LIST]
  7767. moves the cursor down ^Bone^b line in @SELECT[SELECT] and in the command history window.
  7768.  
  7769. EndLine EndLine  (General Input Key Mapping Directive)
  7770.  
  7771.     ^BEndLine=Key^b  (^BEnd^b):  Moves the cursor to the end of the line.
  7772.  
  7773. EraseLine EraseLine  (General Input Key Mapping Directive)
  7774.  
  7775.     ^BEraseLine=Key^b  (^BEsc^b):  Deletes the entire line.
  7776.  
  7777. ExecLine ExecLine  (General Input Key Mapping Directive)
  7778.  
  7779.     ^BExecLine=Key^b  (^BEnter^b):  Executes or accepts a line.
  7780.  
  7781. Ins Ins  (General Input Key Mapping Directive)
  7782.  
  7783.     ^BIns=Key^b  (^BIns^b):  Toggles insert / overstrike mode during line
  7784. editing.
  7785.  
  7786. Left Left  (General Input Key Mapping Directive)
  7787.  
  7788.     ^BLeft=Key^b  (^BLeft^b):  Moves the cursor left one character moves
  7789. the display left ^B8^b columns in @LIST[LIST].
  7790.  
  7791. NormalKey NormalKey  (General Input Key Mapping Directive)
  7792.  
  7793.     ^BNormalKey=Key^b  (^Bnone^b):  Deassigns a general @DIRECTIVES%Input Keys[input key] in
  7794. order to disable the usual meaning of the key within 4DOS and / or make it
  7795. available for @KEYS%Keystroke Aliases[keystroke aliases].  This will cause 4DOS to treat the keystroke
  7796. as a "normal" key with no special function.  For example:
  7797.  
  7798.     NormalKey = Ctrl-End
  7799.  
  7800. will disable Ctrl-End, which is the standard "delete to beginning of line"
  7801. key.  Ctrl-End could then be assigned to a keystroke alias.  Another key
  7802. could be assigned the "delete to end of line" function with the @DelToEnd[DelToEnd]
  7803. directive.
  7804.  
  7805. Right Right  (General Input Key Mapping Directive)
  7806.  
  7807.     ^BRight=Key^b  (^BRight^b):  Moves the cursor right one character
  7808. scrolls the display right ^B8^b columns in @LIST[LIST].
  7809.  
  7810. Up Up  (General Input Key Mapping Directive)
  7811.  
  7812.     ^BUp=Key^b  (^BUp^b):  Scrolls the display up one line in @LIST[LIST] moves
  7813. the cursor up ^Bone^b line in @SELECT[SELECT] and in the command history window.
  7814.  
  7815. WordLeft WordLeft  (General Input Key Mapping Directive)
  7816.  
  7817.     ^BWordLeft=Key^b  (^BCtrl-Left^b):  Moves the cursor left one word
  7818. scrolls the display left ^B40^b columns in @LIST[LIST].
  7819.  
  7820. WordRight WordRight  (General Input Key Mapping Directive)
  7821.  
  7822.     ^BWordRight=Key^b  (^BCtrl-Right^b):  Moves the cursor right one word
  7823. scrolls the display right ^B40^b columns in @LIST[LIST].
  7824.  
  7825. AddFile Addfile  (Command Line Editing Key Mapping Directive)
  7826.  
  7827.     ^BAddFile=Key^b  (^BF10^b):  Keeps the current filename completion
  7828. entry and inserts the next matching name.
  7829.  
  7830. CommandEscape CommandEscape  (Command Line Editing Key Mapping Directive)
  7831.  
  7832.     ^BCommandEscape=Key^b  (^BAlt-255^b):  Allows direct entry of a
  7833. keystroke that would normally be interpreted as an editor command.
  7834.  
  7835. DelHistory DelHistory  (Command Line Editing Key Mapping Directive)
  7836.  
  7837.     ^BDelHistory=Key^b  (^BCtrl-D^b):  Deletes the displayed history list
  7838. entry and displays the previous entry.
  7839.  
  7840. EndHistory EndHistory  (Command Line Editing Key Mapping Directive)
  7841.  
  7842.     ^BEndHistory=Key^b  (^BCtrl-E^b):  Displays the last entry in the
  7843. history list.
  7844.  
  7845. Help= Help  (Command Line Editing Key Mapping Directive)
  7846.  
  7847.     ^BHelp=Key^b  (^BF1^b):  Invokes the 4DOS @HELP[HELP] facility.
  7848.  
  7849. NextFile NextFile  (Command Line Editing Key Mapping Directive)
  7850.  
  7851.     ^BNextFile=Key^b  (^BF9^b, ^BTab^b):  Gets the next matching filename.
  7852.  
  7853. NextHistory NextHistory  (Command Line Editing Key Mapping Directive)
  7854.  
  7855.     ^BNextHistory=Key^b  (^BDown^b):  Recalls the next command from the
  7856. command history.
  7857.  
  7858. NormalEditKey NormalEditKey  (Command Line Editing Key Mapping Directive)
  7859.  
  7860.     ^BNormalEditKey=Key^b (^Bnone^b):  Deassigns a @DIRECTIVES%Command Line Keys[command line editing key]
  7861. in order to disable the usual meaning of the key while editing a command
  7862. line and/or make it available for keystroke aliases.  This will cause 4DOS
  7863. to treat the keystroke as a "normal" key with no special function.
  7864.  
  7865. PrevFile PrevFile  (Command Line Editing Key Mapping Directive)
  7866.  
  7867.     ^BPrevFile=Key^b  (^BF8^b, ^BShift-Tab^b):  Gets the previous matching
  7868. filename.
  7869.  
  7870. PrevHistory PrevHistory  (Command Line Editing Key Mapping Directive)
  7871.  
  7872.     ^BPrevHistory=Key^b  (^BUp^b):  Recalls the previous command from the
  7873. command history.
  7874.  
  7875. SaveHistory SaveHistory  (Command Line Editing Key Mapping Directive)
  7876.  
  7877.     ^BSaveHistory=Key^  (^BCtrl-K^b):  Saves the command line in the
  7878. history list without executing it.
  7879.  
  7880. HistWinBegin HistWinBegin  (History Window Key Mapping Directive)
  7881.  
  7882.     ^BHistWinBegin=Key^b (^BCtrl-PgUp^b):  Moves to the first line of the
  7883. history when in the history window.
  7884.  
  7885. HistWinDel HistWinDel  (History Window Key Mapping Directive)
  7886.  
  7887.     ^BHistWinDel=Key^b (^BCtrl-D^b):  Deletes a line from within the
  7888. history window.
  7889.  
  7890. HistWinEdit HistWinEdit  (History Window Key Mapping Directive)
  7891.  
  7892.     ^BHistWinEdit=Key^b (^BCtrl-Enter^b):  Moves a line from the history
  7893. window to the prompt for editing.
  7894.  
  7895. HistWinEnd HistWinEnd  (History Window Key Mapping Directive)
  7896.  
  7897.     ^BHistWinEnd=Key^b (^BCtrl-PgDn^b):  Moves to the last line of the
  7898. history when in the history window.
  7899.  
  7900. HistWinExec HistWinExec  (History Window Key Mapping Directive)
  7901.  
  7902.     ^BHistWinExec=Key^b (^BEnter^b):  Executes the selected line in the
  7903. history window.
  7904.  
  7905. HistWinOpen HistWinOpen  (History Window Key Mapping Directive)
  7906.  
  7907.     ^BHistWinOpen=Key^b (^BPgUp^b, ^BPgUp^b):  Brings up the history
  7908. window while at the command line.
  7909.  
  7910. NormalHWinKey NormalHWinKey  (History Window Key Mapping Directive)
  7911.  
  7912.     ^BNormalHWinKey=Key^b (^Bnone^b):  Deassigns a history window key in
  7913. order to disable the usual meaning of the key within the history window.
  7914. This will cause 4DOS to treat the keystroke as a "normal" key with no special
  7915. function.
  7916.  
  7917. ListFind ListFind  (LIST Key Mappping Directive)
  7918.  
  7919.     ^BListFind=Key^b  (^BF^b):  Prompts and searches for a string.
  7920.  
  7921. ListHighBit ListHighBit  (LIST Key Mappping Directive)
  7922.  
  7923.     ^BListHighBit=Key^b (^BH^b):  Toggles @LIST[LIST]'s "strip high bit"
  7924. option, which can aid in displaying files from certain word processors.
  7925.  
  7926. ListNext ListNext  (LIST Key Mappping Directive)
  7927.  
  7928.     ^BListNext=Key^b  (^BN^b):  Finds the next matching string.
  7929.  
  7930. ListPrint ListPrint  (LIST Key Mappping Directive)
  7931.  
  7932.     ^BListPrint=Key^b  (^BP^b):  Prints the file on ^BLPT1^b.
  7933.  
  7934. ListWrap ListWrap  (LIST Key Mappping Directive)
  7935.  
  7936.     ^BListWrap=Key^b (^BW^b):  Toggles @LIST[LIST]'s wrap option on and
  7937. off.  The wrap option wraps text at the right margin.
  7938.  
  7939. NormalListKey NormalListKey  (LIST Key Mappping Directive)
  7940.  
  7941.     ^BNormalListKey=Key^b (^Bnone^b):  Deassigns a @LIST[LIST] key in
  7942. order to disable the usual meaning of the key within @LIST[LIST].  This will
  7943. cause 4DOS to treat the keystroke as a "normal" key with no special function.
  7944.  
  7945. CritFail CritFail  (Advanced Directive)
  7946.  
  7947.     ^BCritFail=Yes | NO^b:  This is the same as ^B/F^b on the SHELL = line in
  7948. CONFIG.SYS.  It intercepts all DOS critical errors and returns a ^BFail^b to
  7949. each.  We do not recommend this on a normal system, because you will not have
  7950. a chance to react to a critical error and correct the problem that caused it.
  7951. It is intended for use on bulletin boards or other systems where unattended
  7952. operation is required without user prompts.
  7953.  
  7954. FineSawp FineSwap  (Advanced Directive)
  7955.  
  7956.     ^BFineSwap=Yes | NO^b:  "^BYes^b" enables "^Bfine-grained^b" checksums during
  7957. disk swapping.  This should be used only to diagnose unusual swapping
  7958. problems.
  7959.  
  7960. FullINT2E FullINT2E  (Advanced Directive)
  7961.  
  7962.     ^BFullINT2E=Yes | NO^b:  Enables full support for the COMMAND.COM
  7963. "back door" (interrupt 2E) which a few programs use to execute commands.
  7964. Effective only in a primary shell loaded via the SHELL= command in
  7965. CONFIG.SYS.  See your 4DOS documentation for details on using INT 2E.  Also,
  7966. see APPNOTES.DOC for information on any programs known to require this
  7967. option.  If this directive is not used or is set to ^BNO^b, INT 2E will return
  7968. immediately to the calling program without taking any action.  Setting
  7969. FullINT2E to ^BYes^b adds about ^B100 bytes^b to the resident size of the primary
  7970. shell.
  7971.  
  7972. Inherit Inherit  (Advanced Directive)
  7973.  
  7974.     ^BInherit=YES | No^b:  Aliases and the history list are normally
  7975. passed to secondary shells automatically.  "^BNo^b" disables this feature.
  7976.  
  7977. MessageServer MessageServer  (Advanced Directive)
  7978.  
  7979.     ^BMessageServer=YES | No^b:  For compatibility with COMMAND.COM in
  7980. MS-DOS 4.x and 5.x, 4DOS includes a "^Bmessage server^b" that retrieves error
  7981. message text for DOS external commands like @DISKCOPY[DISKCOPY] and @FORMAT[FORMAT].  The message
  7982. server increases the size of the resident portion of 4DOS by about ^B200 bytes^b.
  7983. "^BNo^b" disables the message server and saves this space, but will cause more
  7984. cryptic error messages such as "^BParse error 3^b" or "^BExtended error 7^b" from
  7985. some DOS external commands.  The message server is automatically disabled by
  7986. 4DOS ^Bexcept^b in the primary 4DOS shell loaded from CONFIG.SYS when running
  7987. under DOS 4.x or 5.x, where this directive applies.
  7988.  
  7989.     ╓─────────────────────────────────────────────────────────────────╖
  7990.     ║NOTE:  The default is YES, meaning the message server is loaded. ║
  7991.     ║Unfortunately, a little gremlin has reversed the meaning of "Yes ║
  7992.     ║and "No" in this directive, and to disable the message server, in║
  7993.     ║the primary shell under MS-DOS 4.x and 5.x, you need to set it to║
  7994.     ║"Yes".  This will, of course, be corrected in our next release.  ║
  7995.     ╙─────────────────────────────────────────────────────────────────╜
  7996.  
  7997. Reduce Reduce  (Advanced Directive)
  7998.  
  7999.     ^BReduce=YES | No^b:  Set to "^BNo^b" to disable the smaller ^Bswap size^b used
  8000. by 4DOS secondary shells.  For diagnosing unusual swapping problems only.
  8001.  
  8002. (Also see the @SwapReopen[SwapReopen] directive).
  8003.  
  8004. ReserveTPA ReserveTPA  (Advanced Directive)
  8005.  
  8006.     ^BReserve TPA=YES | No^b:  Set to "^BNo^b" to prevent 4DOS from reserving
  8007. memory for its transient portion while at the command prompt.  For diagnosing
  8008. unusual TSR or swapping problems only.  ReserveTPA is forced to ^BYES^b
  8009. regardless of any INI file setting if you are running under ^BWindows 3 in real
  8010. or standard mode^b.  This is necessary to avoid undesirable interactions
  8011. between 4DOS and Windows.
  8012.  
  8013. StackSize StackSize  (Advanced Directive)
  8014.  
  8015.     ^BStackSize=nnnn^b (^B3584^b):  Set the 4DOS internal stack size. The
  8016. allowable range of values is ^B3584^b to ^B8192^b.  You may need to increase the
  8017. stack size if you are using extremely complex combinations of batch files
  8018. and nested "prefix" commands like @EXCEPT[EXCEPT], @FOR[FOR], @GLOBAL[GLOBAL], @IF[IF], and @SELECT[SELECT] on
  8019. the same command line.  Under such circumstances 4DOS may not work properly
  8020. you should only use this directive if you are actually experiencing trouble
  8021. under such conditions.  For virtually all users the default stack size will
  8022. be sufficient.  Increasing this value also increases the size of 4DOS's
  8023. ^Btransient portion^b and the size of the 4DOS ^Bswap area^b.
  8024.  
  8025. SwapReopen SwapReopen  (Advanced Directive)
  8026.  
  8027.     ^BSwapReopen=Yes | NO^b:  Set to "^BYes^b" to enable reopening of the
  8028. 4DOS swap file if it is closed by another program.  This is required when
  8029. swapping 4DOS to ^BNovell Netware drives^b.  In all other circumstances, it is
  8030. only useful for diagnostic purposes.  Setting SwapReopen to "Yes" also
  8031. disables the @Reduce[reduced swapping] size normally used in 4DOS secondary shells.
  8032.  
  8033. ≈INDEX Index of Chapters
  8034.  
  8035. @ABOUT[About this 4DOS/4OS2 HyperText HELP System  ]
  8036. @*[Welcome to the 4DOS/4OS2 Hypertext System For Multi-Edit  ]
  8037. @GLOSSARY[Glossary (in alphabetical order)  ]
  8038.  
  8039. @4DOSMEMAC[The 4DOSME macro  ]
  8040. @DIRECTIVES[4DOS.INI Directives  ]
  8041. @ANSI[ANSI Sequences  ]
  8042. @COLORS[Color Attributes and Names  ]
  8043. @COMMANDS[Commands & Keywords (1 of 2)  ]
  8044. @COMMANDS2[Commands & Keywords (2 of 2)  ]
  8045. @GROUPING[Command Grouping  ]
  8046. @CONDITIONAL[Conditional Commands  ]
  8047. @VARIABLES[Environment and Internal Variables  ]
  8048. @INCLUDE[Include Lists   ]
  8049. @KEYS[Key Names & Scan Codes  ]
  8050. @REDIRECTION[Redirection & Piping  ]
  8051. @FUNCTIONS[Variable Functions  ]
  8052. @WILDCARDS[Wildcards  ]
  8053.  
  8054. @#[%#  (Internal Variable)  ]
  8055. @&&[!&&  "AND" Conditional Command  ]
  8056. @||[!||  "OR" Conditional Command  ]
  8057. @.AND.[!.AND.  (Logical Operator)  ]
  8058. @.OR.[.OR.  (Logical Operator)  ]
  8059. @.XOR.[.AND.  (Logical Operator)  ]
  8060. @?[!?  (Internal 4DOS)  ]
  8061. @_4VER[%_4VER  (Internal Variable)  ]
  8062. @_?[%_?  (Internal Variable)  ]
  8063. @_ALIAS[%_ALIAS  (Internal Variable)  ]
  8064. @_ANSI[%_ANSI  (Internal Variable)  ]
  8065. @_BATCH[%_BATCH  (Internal Variable)  ]
  8066. @_BG[%_BG  (Internal Variable)  ]
  8067. @_BOOT[%_BOOT  (Internal Variable)  ]
  8068. @_CDPATH[%_CDPATH  (Environment Variable)  ]
  8069. @_CODEPAGE[%_CODEPAGE  (Internal Variable)  ]
  8070. @_COLUMN[%_COLUMN  (Internal Variable)  ]
  8071. @_COLUMNS[%_COLUMNS  (Internal Variable)  ]
  8072. @_CPU[%_CPU  (Internal Variable)  ]
  8073. @_CWD[%_CWD  (Internal Variable)  ]
  8074. @_CWDS[%_CWDS  (Internal Variable)  ]
  8075. @_CWP[%_CWP  (Internal Variable)  ]
  8076. @_CWPS[%_CWPS  (Internal Variable)  ]
  8077. @_DATE[%_DATE  (Internal Variable)  ]
  8078. @_DISK[%_DISK  (Internal Variable)  ]
  8079. @_DOS[%_DOS  (Internal Variable)  ]
  8080. @_DOSVER[%_DOSVER  (Internal Variable)  ]
  8081. @_DOW[%_DOW  (Internal Variable)  ]
  8082. @_DV[%_DV  (Internal Variable)  ]
  8083. @_ENV[%_ENV  (Internal Variable)  ]
  8084. @_FG[%_FG  (Internal Variable)  ]
  8085. @_LASTDISK[%_LASTDISK  (Internal Variable)  ]
  8086. @_MONITOR[%_MONITOR  (Internal Variable)  ]
  8087. @_MOUSE[%_MOUSE  (Internal Variable)  ]
  8088. @_NDP[%_NDP  (Internal Variable)  ]
  8089. @_ROW[%_ROW  (Internal Variable)  ]
  8090. @_ROWS[%_ROWS  (Internal Variable)  ]
  8091. @_SHELL[%_SHELL  (Internal Variable)  ]
  8092. @_TIME[%_TIME  (Internal Variable)  ]
  8093. @_TRANSIENT[%_TRANSIENT  (Internal Variable)  ]
  8094. @_VIDEO[%_VIDEO  (Internal Variable)  ]
  8095. @_WIN[%_VIDEO  (Internal Variable)  ]
  8096. @÷?[%?  (Internal Variable)  ]
  8097. @CDPATH[%CDPATH  (Environment Variable)  ]
  8098. @CMDLINE[%CMDLINE  (Environment Variable)  ]
  8099. @COLORDIR[%COLORDIR  (Environment Variable)  ]
  8100. @COMSPEC[%COMSPEC  (Environment Variable)  ]
  8101. @TEMP[%TEMP  (Environment Variable)  ]
  8102. @TEMP4DOS[%TEMP4DOS  (Environment Variable)  ]
  8103. @÷PATH[%PATH  (Environment Variable)  ]
  8104. @ALIAS[!ALIAS  (Internal 4DOS)  ]
  8105. @APPEND[APPEND  (Internal/External MS-DOS)  ]
  8106. @ASSIGN[ASSIGN  (External MS-DOS)  ]
  8107. @ATTRIB[ATTRIB  (Internal 4DOS)  ]
  8108. @BACKUP[!BACKUP  (External MS-DOS)  ]
  8109. @BEEP[BEEP  (Internal 4DOS)  ]
  8110. @BREAK[BREAK  (Internal 4DOS)  ]
  8111. @CALL[!CALL  (Internal 4DOS)  ]
  8112. @CANCEL[CANCEL  (Internal 4DOS)  ]
  8113. @CD[CD  (Internal 4DOS)   ]
  8114. @CDD[CDD  (Internal 4DOS)  ]
  8115. @CHCP[CHCP  (Internal 4DOS)  ]
  8116. @CHDIR[CHDIR (Internal 4DOS)   ]
  8117. @CHKDSK[CHKDSK  (External MS-DOS)  ]
  8118. @CLS[CLS  (Internal 4DOS)  ]
  8119. @COLOR[COLOR  (Internal 4DOS)  ]
  8120. @COMP COMP[ (External MS-DOS)  ]
  8121. @COPY[COPY (Internal 4DOS)  ]
  8122. @CTTY[CTTY  (Internal 4DOS)  ]
  8123. @DATE[!DATE  (Internal 4DOS)  ]
  8124. @DEL[DEL  (Internal 4DOS)  ]
  8125. @DELAY[DELAY  (Internal 4DOS)  ]
  8126. @DESCRIBE[DESCRIBE  (Internal 4DOS)  ]
  8127. @DIR[DIR  (Internal 4DOS)  ]
  8128. @DIRS[DIRS (Internal 4DOS)  ]
  8129. @DISKCOMP[DISKCOMP  (External MS-DOS)  ]
  8130. @DISKCOPY[DISKCOPY  (External MS-DOS)  ]
  8131. @DO[DO (4DOS Keyword)  ]
  8132. @DRAWBOX[DRAWBOX  (Internal 4DOS)  ]
  8133. @DRAWHLINE[DRAWHLINE  (Internal 4DOS)  ]
  8134. @DRAWVLINE[DRAWVLINE  (Internal 4DOS)  ]
  8135. @ECHO[!ECHO  (Internal 4DOS)  ]
  8136. @ECHOS[ECHOS  (Internal 4DOS)  ]
  8137. @EDIT[EDIT  (External MS-DOS)  ]
  8138. @ELSE[ELSE  (4DOS Keyword)  ]
  8139. @ELSEIFF[ELSEIFF  (4DOS Keyword)  ]
  8140. @ENDIFF[ENDIFF  (4DOS Keyword)  ]
  8141. @ENDLOCAL[ENDLOCAL  (Internal 4DOS)  ]
  8142. @ENDTEXT[ENDTEXT  (4DOS Keyword)  ]
  8143. @ERASE[ERASE  (Internal 4DOS)  ]
  8144. @ESET[ESET  (Internal 4DOS)  ]
  8145. @EXCEPT[EXCEPT  (Internal 4DOS)  ]
  8146. @EXIT[EXIT  (Internal 4DOS)  ]
  8147. @EXITCODE[ Exit Code  ]
  8148. @FASTOPEN[!FASTOPEN  (External MS-DOS)  ]
  8149. @FIND[FIND  (External MS-DOS)  ]
  8150. @FOR[FOR  (Internal 4DOS)  ]
  8151. @FORMAT[FORMAT  (External MS-DOS)  ]
  8152. @FREE[FREE  (Internal 4DOS)  ]
  8153. @GLOBAL[!GLOBAL  (Internal 4DOS)  ]
  8154. @GOSUB[GOSUB  (Internal 4DOS)  ]
  8155. @GOTO[GOTO  (Internal 4DOS)  ]
  8156. @GRAFTABL[GRAFTABL  (External MS-DOS)  ]
  8157. @GRAPHICS[GRAPHICS  (External MS-DOS)  ]
  8158. @HISTORY[!HISTORY  (Internal 4DOS)  ]
  8159. @IF[!IF  (Internal 4DOS)   ]
  8160. @IFF[IFF  (Internal 4DOS)  ]
  8161. @IN[IN  (4DOS Keyword)   ]
  8162. @INCLUDE[Include Lists   ]
  8163. @INKEY[INKEY  (Internal 4DOS)  ]
  8164. @INPUT[INPUT  (Internal 4DOS)  ]
  8165. @JOIN[!JOIN  (External MS-DOS)  ]
  8166. @KEYB[!KEYB  (External MS-DOS)  ]
  8167. @KEYSTACK[KEYSTACK  (Internal 4DOS)  ]
  8168. @LABEL[!LABEL  (External MS-DOS)  ]
  8169. @LH[LH  (Internal 4DOS)   ]
  8170. @LIST[LIST  (Internal 4DOS)  ]
  8171. @LOADHIGH[LOADHIGH  (Internal 4DOS)  ]
  8172. @MD[!MD  (Internal 4DOS)   ]
  8173. @MEM[MEM  (External MS-DOS)  ]
  8174. @MEMORY[MEMORY  (Internal 4DOS)  ]
  8175. @MIRROR[MIRROR  (External MS-DOS)  ]
  8176. @MKDIR[MKDIR  (Internal 4DOS)  ]
  8177. @MODE[MODE  (External MS-DOS)  ]
  8178. @MORE[MORE  (External MS-DOS)  ]
  8179. @MOVE[MOVE  (Internal 4DOS)  ]
  8180. @NLSFUNC[!NLSFUNC  (External MS-DOS)  ]
  8181. @PATH[!PATH  (Inter 4DOS)  ]
  8182. @PAUSE[PAUSE  (Internal 4DOS0  ]
  8183. @POPD[POPD  (Internal 4DOS)  ]
  8184. @PRINT[PRINT  (External MS-DOS)  ]
  8185. @PROMPT[PROMPT  (Internal 4DOS)  ]
  8186. @PUSHD[PUSHD  (Internal 4DOS)  ]
  8187. @QUIT[!QUIT (Internal 4DOS)  ]
  8188. @RD[!RD  (Internal 4DOS)   ]
  8189. @REBOOT[REBOOT  (Internal 4DOS)  ]
  8190. @RECOVER[RECOVER  (External MS-DOS)  ]
  8191. REM[REM  (Internal 4DOS)  ]
  8192. @REN[REN  (Internal 4DOS)  ]
  8193. @RENAME[RENAME  (Internal 4DOS)  ]
  8194. @REPLACE[REPLACE  (External MS-DOS)  ]
  8195. @RESTORE[RESTORE  (External MS-DOS)  ]
  8196. @RETURN[RETURN  (Internal 4DOS)  ]
  8197. @RMDIR[RMDIR  (Internal 4DOS)  ]
  8198. @SCREEN[!SCREEN  (Internal 4DOS)  ]
  8199. @SCRPUT[SCRPUT  (Internal 4DOS)  ]
  8200. @SELECT[SELECT  (Internal 4DOS)  ]
  8201. @SET[SET  (Internal 4DOS)  ]
  8202. @SETDOS[SETDOS  (Internal 4DOS)  ]
  8203. @SETLOCAL[SETLOCAL  (Internal 4DOS)  ]
  8204. @SETVER[SETVER  (External MS-DOS)  ]
  8205. @SHARE[SHARE  (External MS-DOS)  ]
  8206. @SHIFT[SHIFT  (Internal 4DOS)  ]
  8207. @SORT[SORT  (External MS-DOS)  ]
  8208. @SUBST[SUBST  (External MS-DOS)  ]
  8209. @SWAPPING[SWAPPING  (Internal 4DOS)  ]
  8210. @SYS[SYS  (External MS-DOS)  ]
  8211. @TEE[!TEE  (Internal 4DOS)  ]
  8212. @TEXT[TEXT  (Internal 4DOS)  ]
  8213. @THEN[THEN  (4DOS Keyword)  ]
  8214. @TIME[TIME (Internal 4DOS)  ]
  8215. @TIMER[TIMER  (Internal 4DOS)  ]
  8216. @TREE[TREE  (External MS-DOS)  ]
  8217. @TRUENAME[TRUENAME  (Internal 4DOS)  ]
  8218. @TYPE[TYPE  (Internal 4DOS)  ]
  8219. @UNALIAS[!UNALIAS  (Internal 4DOS)  ]
  8220. @UNDELETE[UNDELETE  (External MS-DOS)  ]
  8221. @UNFORMAT[UNFORMAT  (External MS-DOS)  ]
  8222. @UNSET[UNSET  (Internal 4DOS)  ]
  8223. @VER[!VER  (Internal 4DOS)  ]
  8224. @VERIFY[VERIFY  (Internal 4DOS)  ]
  8225. @VOL[VOL  (Internal 4DOS)  ]
  8226. @VSCRPUT[VSCRPUT  (Internal 4DOS)  ]
  8227. @XCOPY[!XCOPY  (External MS-DOS)  ]
  8228. @Y[!Y  (Internal 4DOS)  ]
  8229.  
  8230.  
  8231.  
  8232.